Working on caching tank base/parts for faster rendering!

- Only standard tanks work. All tanks render right now with a standard base.
- new class introduced. this class builds the tanks and provides the "image" back to the team to lay on the field.
- Fixed a few FOV values.
Fixed issue where Team's garages where not getting cleared at the end of every round.

- This caused teams to get mixed colors at the start of a new round (after the first one).
Started to build up new mammoth tank body.
Mammoth tank now properly draws with new system.

- Other thanks need more work. Healing/Howitzer
- The renderToCanvas now automatically translate the canvas object (the starting X,Y of the new canvas) to the center based off the WxH provided.
Bullets are now drawn from cache.

- It may look like the tanks (just ground units so far) have gotten "softer" in appearance. I have reason to believe that this is because the cached display. The unit doesn't get "redrawn" (via canvas paths) every time the routine updates. It simply moves the "already drawn path" to a new location and rotates it.

- Performance is up, looks are down. Sadly, I've been trying to get the tanks to look better (sharper/harder). But they now just have a soft appeal.

- Added some methods to help draw the bullets (and any other static drawing that doesn't require complex X/Y/A parameters.
Merge branch 'master' of https://github.com/blitzxion/Tanks.js into offscreenrender

Conflicts:
	Tanks.js
fixed GOD mode button. (Was using RGB with 4 params -> incorrect!)
Normal tanks, mammoth and healing tank's appearances are now a little bit enhanced.

- Line width increased from 1 to 2 to make up for the "softness" of their base bodies.
- Making "too" snug of off screen canvas will create an Anti-Aliasing hell.
- Increased sight range of AA tank. Fixed sight issue with AA turret.
Planes are now part of the TankGarage.

- Planes now render off screen before being added to the map.
- Artillery now is built correctly (turret was off a little)
- Removed commented code / minor typos.
Canvas clears using the optimized method. Javascript now sets the background color of the body.

- JS now sets the color of the background (body tag). Canvas is transparent, so this works perfectly. Canvas no longer needs to use the wrong clear method. Its now using the best clear method provided.
- I've begun support for the background canvas to work on the top/bottom banners. I have it all commented out as its going to take more work to properly get the playing field to fit properly.
New (Work in progress) Tanks.js!

- First: Its not working! Bullets, Smoke, most logic... its just not there! Please wait!
- Removed old Tanks.js and Tanks.html (no longer needed)
- All code is broke up into different js files now. This is likely to change when getting closer to public release. One file is nice...
- Using KineticJS for proper canvas management of shapes. That's all its doing....
- Have a linq.js file, but not in use (think LINQ in JS, wow)
- Logic paths are pretty much the same and will be the same.
- Not all debug/Text output are available. Some debugging are currently toggled on at all times.
- Some text from the old system are no longer rendered with canvas, now with HTML (since text is a performance hit in a loop draw).
- Some shell classes are available (or will be) to help with future enhancements for Tanks.js. (Obstacles, special effects, etc).
- There is no cow level.
- This is all alpha work, will likely change completely in a future push!
Finally got the tanks pointing at each other! (Instead at some crazy angle!)

- Since turrets on tanks are groups within a parent group, their angle is relative to the parent. Since we pass in a radian value that doesn't take that into consideration (too much additional work), we must get the different between the parent and the intended TurretAngle (easy little method now does this).

- FOV is back up and going (disabled for now in code). Having FOV helped figure out the above problem!

- Planes should be moving around now. They all look the same, just different sizes to make the easy to tell apart. Their graphics are coming back soon.

- No one is attacking each other yet, however, they are targeting each other just fine. Evasion is still out of the works for now...

- Fixed issue with the healing tank's center offset.

- Fixed issue with Base center offset (including their healing circle; that doesn't work yet either!)

- Slowed the Fighter Jet's turning speed. That guy was pulling some serious G's in turns!

- Additional work to the HP bars, not happy with them. Have some awesome ideas in play for this! Think container, dynamic internal bar, and showing of HP values (switchable)

- Targeting lines are disabled in this push. (Note: All debugging extras can/will cause drop in performance due to additional work load)

- Temp restriction of terrain colors. This is just for debugging.
Tanks are now shooting each other.

- Warning: Something is pissing off javascript and the canvas lib. I think bullets are not properly getting disposed when I mark them for removal in explode().
- Units disappear when their HP drops (still no HP bar). No Explosions or smoke/debris.
- Planes are still mindless.

- There also seems to be a performance situation after all the units (max on screen) are firing. I'm certain it has everything to do with the Bullet class just going nutz with loops! LLOOOOOOOOPPPPPPPPSSSSSSS!

- Added back terrain.
Fixed Bullet Removal bug (was trying to remove the object while it was already being removed -> too fast!)

- Found another bug (three for that matter).
-- FPS sometimes 'twitches' down to 50FPS then jumps back to 60
-- FPS sometimes falls to 30FPS and stays there.
-- Game will crash "Cannot Call method 'getContext' of undefined @ kinetic-v3.10.3.js:2920. This is likely because i'm missing logic all over the place for removing/adding units. I probably have a bad Shape container.
Guess that last commit didn't want to send out the updated index.html!
Major update! Object Pools, etc

- This update now uses object pools for most systems (Explosions, Smoke, Bullets).
- New FPS counter (old one still available for realtime updates)
- Games don't auto-restart yet lol
- Garbage collection is no longer killing the game!
- More updates to come!
Added in DebrisPool. Had to tweak it a little bit, it was causing some performance issues. Could still be causing issues tho...
Added back HP bars for all units.

- I'm not done with these, I would like to do the pool option with these as well.
- These are enhanced HP bars, they now are within a dark container, and the fill will change with their HP value. The color will also change at 50% and 25%.
Added support for HP Values (ie 100/100). Its a small performance hit, so I'm leaving it disabled and will have it be able to be toggled later.
Added back healing ability to bases/heal tank.

- Heal tank now show's it's healing radius.
- Hover info how shows Tanks HP value. Removed Turret/Base angle information (no longer needed).