Version 1.0 API Changes, refactoring and test improvement