Add freelist stats to db stats

This is fairly straightforward, the only twist is adding freelist.count() because freelist.size() used to call freelist.all() which is fairly expensive (this may actually shave off a bit of time from write transactions, freelist.all() used to show up in our profiles in non-trivial amounts as well).

@benbjohnson 

/cc @snormore, @charlescng 
@mkobetic You'll need to grab the freelist stats before releasing the `db.rwlock` above. Save the `FreelistN` and `FreelistAlloc` in local variables and then set them on tx.db.stats inside the `db.statlock`. You'll probably need to revert the `mergeStats()` function refactor.