release version 0.5

refactoring all code.