NCBC-704: Ensure opaque value is unique for all operation instances

All operations are implementations of the base class OperationBase<T>
which is generic. This class held a static variable to use as a counter
base; which is flawed because for each type of T instantiated, a new
static variable would be created because internally each type of T is
compiled into it's own class. This moves the opaque generator into a new
class, SequenceGenerator, so that the identifier is unique and incremented
correctly.

Change-Id: I7b159e896a086b40490177e158924655fa0c7166
Reviewed-on: http://review.couchbase.org/42573
Reviewed-by: Mark Nunberg <mnunberg@haskalah.org>
Reviewed-by: Sergey Avseyev <sergey.avseyev@gmail.com>
Reviewed-by: Jeffry Morris <jeffrymorris@gmail.com>
Tested-by: Jeffry Morris <jeffrymorris@gmail.com>