Initial commit. No functionality, just sketching out unit tests.