Changed Controller to be called Container, so Controller tasks can be
segmented from its container duties. The container holds all the
variables and is now responsible for loading, reloading deleting
contained objects, where as the controller only performs actions on
these contained objects, by using a pointer to the contianer variable