Structure setup

Ok cool, I have started a structure based on what we talked about and a bunch of stuff that I stole from `pm`.

Feedback welcome!
should be can be