Added upgrades-implementation to start planning out the code structure for upgrades.
Updated elements in upgrades. Added strategies to elements
Implemented cached weapons - update ammo timer in bg
Added className to all inherited objects

Must actually name the constructor for the to work. Updated accordingly.
Also added some additional abstraction to weapons