Add test group annotations to riak_test

Enable tests to be tagged with a list of attributes that can be called on the riak_test command line to group or aggregate tests. This feature can be used to group tests so that they may be categorized and run in sets. 

Test are tagged with the following attribute:

```
-test_type([bucket_types, http]).
```

Then, instead of named tests at the command line, groups are specified:

```
./riak_test -c rtee -g bucket_types,http
```

This will result in 2 matches against the above test; any match will run the test:

```
Tests to run: [{http_bucket_types,
                   [{id,-1},
                    {platform,<<"local">>},
                    {version,<<"riak_ee-2.0.0beta6-11-g5a161cf-develop">>},
                    {project,<<"riak_ee">>}]},
               {bucket_types,
                   [{id,-1},
                    {platform,<<"local">>},
                    {version,<<"riak_ee-2.0.0beta6-11-g5a161cf-develop">>},
                    {project,<<"riak_ee">>}]}]
```
I was searching for some way to express this a little more clearly. Using `ordsets` would be nice, but the process getting the `groups` converted is perhaps more painful, but the groups could be converted to atoms before reaching this point then you could write:

```
 not ordsets:is_disjoint(ordsets:from_list(TestTypes), 
                                       ordsets:from_list(Groups)),     
```

It's arguably easier to understand, but really moot without a having to iterate through the groups list twice. It would be really nice if the `getopt` library let you specify something like string-list as a type to indicate and automatically tokenize comma-separated option lists.