Enable variable assignment alignment
Refactoring and unit tests
Update README.md