Structural changes, added a few nice helpers and some other stuff