Improve problem readability
Remove run!
Use nicer formatting at bottom of file
Refactor class and tests with API design in mind