remove dimensions, will be replaced by type funs
add datum type and its tests
make dep types typed. adjust tests
reindent tests
add dep types' types. add tests.