Created blueprints to help refactor and modularize the code.

Fixes #13, Fixes #14