Rewrite of recon_alloc:memory

Added a two new options; allocated_types and allocated_instances
that can be used to figure out which allocator types/instances most
data lies in.

Added a new parameter to specify whether you want the current or max
value. This works like sbcs_to_mbcs and you want it for the same reasons.

Change memory(used,_) to use the total block size rather than
erlang:memory(total). This number should be the same, but you can also
get the max value.

These changes are backwards incompatible with the old API
Added current and max options to sbcs_to_mbcs

This is a backwards incompatible change