Fixed #132. Guard POST /groups with validation.

We require 'name' to be present and it cannot be an empty string. We also ensure that if users and sites are provided, they must exist.
Merge branch 'issue128' into issue132
In addition to #132, we fixed #136 to send update to groups in minion-db-init.
Merge pull request #137 from yeukhon/issue132

Issue132 Guard POST /groups with validation