Refactored for 0.2.0