mmap driver support.

* Add in mmap for user source.
* Restore some of the mmap tests.
* Fix bug in user source which prevented head from advancing.