type: added initial rspec coverage

not comprehensive but it is a start ;)
after all the type design is still in flux...