Upgrade plan responses
Added random chance fire application on bub collision
input.keyboard methods now accept arrays
Added hotkeys for weapons, added global tracker

bpm.hotkeys = method of configuring hotkeys
abstracted some code out of Field.update - init is looking messy too
added Field.monitorHotkeys abstraction method
Fixed weapon hotkey bug

If you had tried to switch to a weapon that you were currently using, it
would create a new instance of the weapon, storing both in
State.savedWeapons which caused some... interesting things to happen.
Small idea addition
Added capitalize() method; caps first letter of a string
Added lightning and ice paths
Restructured elements - moved majority to Bubbles

Bubbles now have the elementStats instead of bullets. This simplified a lot of other code.
Created a convenience method to generate _updateElement and _applyElement methods (code re-use improvement).
Adjusted element method names to make more sense (updateElement, applyElement, and removeElement are now the only public methods).