New Circle and Polygon masks + minor changes/fixes the other masks

Trying to sum up:

 - ported and improved `Circle` and `Polygon` masks from HaxePunk
 - console is updated before everything else (so now should not be a frame behind)
 - added a `project()` function to some masks to make working with `Polygon` easier
 - added some more params to `Image.createRect/createCircle()` (fill, thick, etc.)
 - added `Image.createPolygon()` to create an `Image` from a `Polygon` mask
 - changed `private collide___()` functions to `override protected collide___()` (this was a weird surprise o.O: don't know why they were simply declared as private and not overriding from the super class)
 - added `debugDraw()` for `Hitboxes` in `Masklist`
 - changes in `Masklist.update()` to handle `Hitboxes/Polygons` correctly

There shouldn't be any breaking changes, but surely needs some more testing.

Link to related topic on the forums: http://developers.useflashpunk.net/t/polygon-and-circle-masks-for-flashpunk-round-2