Initializers now return instancetype
Merge pull request #75 from franklsf95/master

Initializers now return instancetype, more friendly to subclassing