Refactor into roles and add desktop

This is big commit that does two things (soz). It refactores the ansible
code into roles to make it easier to put all vhosts on a single server
and also adds a desktop ubuntu machine.