WIP: Refactor and Gemify