- removed hardcoded methods in BuildManager and UnitManager
- moved BuildTime class outside of JavaBot and into it's own class
- Fixed issue where singularity charge was not getting researched
- added methods so BuildManager could build both structures and units.
- decided not to use UnitManager. Reason: BuildManager has all the information for the buildings, it should be the one building units, buildings, and upgrades
- Workers now get assigned to Assimilator upon creation (unitCreate event does not work for assimilator)

NOTE:
There are quite a few issues. I decided not to fix them as it would take more time and not critical at the moment. I decided to go ahead and commit this so that everyone else could resume their work.