New unit tests
Fix bug where coefficient is not updated correctly.
Add optimization TODO
Add initialization phase