Initial commit

Basic functionality in place.