Optimised PNCounter Format

The first version of the PNCounter code literally used a pair of GCounters as
its representation and deferred a lot of the behaviour down to GCounter functions.

However, there were issues with this, essentially to do with keeping the two lists of actors in sync (something needed for GC) and the fact that you store
each actor twice, which is inefficient.

The new format is very similar to the structure of a GCounter, but the actor-count tuples include a count of both increments and decrements. For example

Old Style: {[{a,4}],[{a,1},{b,2}]}
New Style: [{a,4,1},{b,0,2}]

I've updated from_binary/1 to convert into the new structure every time, however
there's also a new to_binary/2 which can create the old style (should it be
required for downgrades).
Remove TODO and make update interface nicer
Smaller PNCounter Format
Conversion Functions and to_/from_binary functions for all versions
also export current_version/1
Remove debug (thanks @russelldb)
Merge pull request #47 from basho/pncounters-v2

Optimised PN-Counter Format (aka PNCounters V2)