Are we allowed to work on our submission prior to the start of the gamejam?
As with all game jams, the spirit of the event is that you do all your work during the jam. Obviously if you have a library of code that's generic enough to be used or boiler-plate type components from previous games, that makes total sense to use for a jam game: you'd be doing the same thing in an actual project, no reason it shouldn't be used in a jam.