Fixed a bug that was preventing room colour changes.  In all honesty, I'm not entirely sure why it was bugging out.  I have a theory though.

InfoPanel is getting instantiated partyway through the initialization of the ApplicationFactory.  As part of InfoPanel's initialization it's making a call to the ApplicationFactory, requesting a new ColorChooserListener, which up until now the ApplicationFactory was returning with a reference to the InfoPanel as known by the ApplicationFactory.  But at that point, it hasn't fully initialised.  I'm guessing that's why when you subsequently go to change a room, it was throwing null pointers.  For some reason though, passing a reference to the info panel to the ApplicationFactory when requesting a new ColorChooserListener fixes the problem.  I don't know why.