rewrite lib && add unit test && tag 0.1.0
fix bug && tag 0.1.1