A PN-Counter for embedding in riak_dt_map

The problem with an embedded
pn-counter is when the field is removed and added again. PN-Counter
merge takes the max of P and N as the merged value. In the case
that a field was removed and re-added P and N maybe be _lower_ than
their removed values, and when merged with a replica that has not
seen the remove, the remove is lost. This counter adds some
causality by storing a `dot` with P and N. Merge takes the max
event for each actor, so newer values win over old ones. The rest
of the mechanics are the same.
Adding reset-remove semantic.
Refactor merge function for map
Add explicit `equal` eunit test
Up the timeout 'cos timing out
Replace map/orswot_eqc with quviq consulted statems

As well as ensuring correct shrinking and fixing generators
replace sets with lists for ease of reading when a counter
example is found
Re-write od_flag_eqc to shrink correctly
Add explicit idempotent/commutative/associative tests
Address review comments

Disallow negative arguments to embedded counter
Document the map semantics
Fix documentation typos in the Map
Merge pull request #93 from basho/feature-bug/rdb/removes-remove

Reset-remove semantic on Map

Reviewed-by: seancribbs