About to refactor by feature
Organized by feature
Implements #2