Small optimization in me.PolyShape.recalc()
[#569] Rename me.PolyShape to me.Polygon and add me.Line

- Collision tests for me.Line are currently stubbed out (they always return false)
- Added spec for me.Line
- Added me.Polygon.Error and me.Line.Error classes for exception handling
- me.Polygon raises an exception when fewer than 3 points are provided
- me.Line raises an exception when exactly 2 points are NOT provided
- Fixed some doc comments long the way
Replace parse(Int|Float) with implicit Number conversions (saves 400 bytes)

* Old:
    Original: 835647 bytes.
    Minified: 225044 bytes.

* New:
    Original: 835282 bytes.
    Minified: 224677 bytes.