Fix some mistaken uses of types.namedTypes.
Return PrintResult objects from Printer methods instead of strings.

Closes #49.
Clean up the public package interface.

Closes #50.
Bump NPM version to 0.5.0 in preparation for publishing.

The minor version bump is due to several breaking changes to the package
interface, including returning `PrintResult` objects from the print
methods (#49) and removing properties like `.namedTypes`, `.builder`, and
`.builders` (#50) from the public interface (use `.types.*` instead).