implement functions to free viewports and contexts
add tests for viewport navigation
Initial attempt to implement coordinate transformations
initial example output
make all deallocation functions recursive where applicable
add functions to operate on parameter structs