Initial commit. Lots of stuff to work out still before work can be started.