added/updated datatypes
typdefs no longer use 'using's

instead of copying a using thing to the top of every file, I changed it
so all the datatypes are just classes that are implicitly convertable
with other types