some refactoring for the sake of it
tag new release v0.2.7