Haxe3 syntax changes

Including:
 * missing semi-colons on inline functions
 * typedef before imports and using are finished
 * :Array<Dynamic> needing to be explicitly defined.
 * and probably a few others
Get rid of optional second argument

(I hope that wasn't necessary, it appears to do nothing and was causing
compile time errors)
Added "mondayStart" option to snapToWeekDay.

Also added documentation for each of the functions