Lots of changes

- Check for .sheesh file in project folder to make sure we don't try to work with something that isn't a sheesh folder
- Move common code into roles.
- Sort out dependency management
- Simplify