ISPN-3981 Enhance grouping API to support group manipulation methods

* First implementation. Added getGroup() and removeGroup() methods

This is the base implementation. Added methods to return and remove the keys from a group. This may be extended to support other functionality.

https://issues.jboss.org/browse/ISPN-3981
I wonder if we should just make this transactional instead.  We already pull ALL the keys into memory at one time anyways.  Or was there a different reason for this?