Initial check in

This check in is still work in progress and doesn't include the
libraries required to build the project yet.

There is still some considerable cleanup to be performed.