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