switch Image copy methods to use x,y,width,height instead of left,top,right,bottom style arguments
update all other uses of Image copy/create methods to use the new x,y,width,height arguments for specifying dimensions
some minor cleanups and new asserts
more minor cleanups
add macros for easy adding of the basic type system in use for a number of systems
oops
convert all instances of copy+pasted type-system code to use the new macros
add some doc comments to the type-system header