a bit of type check progress
type names
a bit more type checking