updated template and added Template.create() factory method
crated gamemgr module to handle things that need coordination between different objects, such as movement.