Refactored, preparing for more awesome