Initial Revision

Actually this has been WIP for like 3 months now