Fully Functional

Needs commenting, but should be working without issue.