Check all FlxObjects for mouse events

Sprite groups treated as sprites + groups. Tilemaps are mouse-able now.
Best performance FlxPool

Array indexing is faster than any other proposed method.
Merge pull request #1254 from MSGhero/patch-1

Check all FlxObjects for mouse events, closes #1252
Merge pull request #1256 from MSGhero/patch-2

Best performance FlxPool, closes #1189
FlxObject: always init _point and _rect, #1250
FlxMouseEventManager: add setObjectMouseButtons()
Update CHANGELOG.md + minor cleanup
Compile fixes
Bitfive gamepad support
Merge pull request #1257 from MSGhero/dev

FlxPool unit tests, Closes #900
Fix FlxColorTest

contained tests from #1224 based on @:op functions that weren't merged
Add FlxAssert.arraysAreEqual()
Additional check for FlxAssert.arraysAreEqual()
FlxStringUtil.bitmapToCSV(): use 24bit colors, unit tests, add missing ColorMap param to imageToCSV()
Change the updateFollow function. In the style SCREEN_BY_SCREEN check,
changed the lines targetX > (scroll.x + width) to targetX >= (scroll.x +
width). Same for the TargetY section.

This allows for switching to the next screen when moving ight or down upon
the followed sprite moving completely to the next screen rather than
waiting until they move further in to the screen.
Merge pull request #1259 from ezacharyk/dev

Change the updateFollow function, style SCREEN_BY_SCREEN check
FlxTimer: allow starting timers with time == 0
FlxBar#fixedPosition: clearer description, closes #1261
Fixed text input scrolling glitch.
Removed external dependency.