Changed Resource to interface
Added electric engine
Add use method to Engine and Upgrade
Add random generation to engine class
Add random generation to upgrade class
Fix scope of random generator in engine class
fixes something - can't remember what (before implementing reapply but after making random generation)
Comments on Engine class
Comments on Upgrade class
Fixed stuff
Merge branch 'train'