This refactors all handling of audio-only and last N to 2 features in preparation for "low bandwidth mode". The main motivation to do this is that lastN is a "global" setting so it helps to have all processing for it in a single place.