refactoring and added transitioning state
Release 0.2.8