Formatting; model and options changes. Comments. Todos
Refactoring checkpoint.
Code formatting.
Code formatting.
Added unit testing.
Code cleanup.