Allow each server to have a set of roles

This closes issue #429