Initial commit
Move out of private repository.
Rearrange code a bit.