Refactor design
Merge pull request #40 from camelmasa/refactor-design

Refactor design