MPs vote on a December poll - as Boris Johnson officially accepts a further Brexit delay until 31 January.