Factored the function to read all text from a file into it's own helper
class.
Moved the immediate-execution-mode logic into it's own reusable
component.
Created a pushable entity component.
Entities can now be picked up and added to an inventory if they have the
CanBePickedUpComponent.
Buttons can now be defined in XML, including the click event as
Javascript with either the "click" attribute or "Button.click" child
element.
StackPanels can now be generated from xml files.
Overwork is now randomly generated for each new game using the
PerlinOverworldChunkGenerator.
Separated the inventory UI from the MessageBox class.