Merge pull request #52 from JonathanO/master

Avoid reparsing types repeatedly.
Merge pull request #53 from JonathanO/master

Revert performance regression