WIP: Refactor

Rough beginning to get you thinking