MB-1143: added server groups

Because removal of nodes requires removal of node from it's server
group I decided to create new compat mode: [2, 5].

Once all nodes are 2.5+ our node addition code becomes aware of server
groups. Node ejection code is always aware of it.

Change-Id: Ica7e6e0824c7e4b8decf4d3cfc81d64aaf21d2c8
Reviewed-on: http://review.couchbase.org/29867
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
MB-1143: added REST API for server groups

Change-Id: I11eb4a39445baaa15a05bb36390e1bffdb59e2dd
Reviewed-on: http://review.couchbase.org/29868
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
MB-1143: refresh pool details on server group updates

I.e. so that ?v trick works

Change-Id: I46f6b9feb8f212aafc1238d1899a2f841bb10fd6
Reviewed-on: http://review.couchbase.org/29869
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
MB-1143: added internal unittest for server groups API

Change-Id: I83d70fd86ceb75c1a5dbc277b64edce9530bd134
Reviewed-on: http://review.couchbase.org/29870
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
MB-1143: added api doc for server groups REST API

Change-Id: Iabaaa4383568df4146808e312074f49873acab1e
Reviewed-on: http://review.couchbase.org/29873
Tested-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>
Reviewed-by: Aliaksey Kandratsenka <alkondratenko@gmail.com>