A huge commit

This contains a lot features and would be documented on further notice