Define list default mem ops, which uses standard heap allocation

Make use of these mem ops for alloc and free calls throughout the
  list functions, even use when creating buffer instances.
Add buffer create interface that allows passing of custom mem ops
Next... make creation of data and page objects use mem ops