typed cube creation routines
type support in in/out functions
cube init function and cube_to_point conversion