closes #153 many improvements to type layer (test, docs, refinement)

Not a biggie- but this should be particular