initial implementation of typewriter architecture; lots to do
reorganize into "app" concept
huh, package re-added?
write generated code to buffer before committing to file, intention of checking ast's
validate ast of generated file
format generated code before committing to file
comments & renames
Validate must also indicate whether a TypeWriter will write for a given type, to avoid empty files
Package can just be a wrapper around types.Package, no need for other stuff
lose deprecation bits
rearrange
make the app type private, accessible only through NewApp; see if we like this
use buffer pointer instead
new ApplicableTo method on Template
return value instead of pointer on eval
add underlying type to Type
new NewAppFiltered method
move type def for clarity
return err on Register instead of panic
better comments