A lot of changes, more WIP