ramdisk: Support file backing

* When registering a ram disk, a file can be specified. Its content will
  be loaded into the ram disk:
    echo register <file> > /dev/disk/virtual/ramdisk/control
* At any time changes to the ram disk data can be written back to the
  file:
    echo flush /path/to/ramdisk > /dev/disk/virtual/ramdisk/control
  If not explicitly written back, the changes will be lost on reboot.
devfs: Remove superfluous create() hook

We don't support creation of files and the VFS calls open() when an
entry already exists.
ramdisk: Add required DEBUG_PAGE_ACCESS_*() macros
devfs: Add devfs_{get,put}_device()

devfs_get_device() returns the device for a given path (if any), also
acquiring a reference to its vnode (thus ensuring the device won't go
away). devfs_put_device() puts the device vnode's reference.
device_manager: Implement unpublish_device()
Move TextTable from pkgman to libshared
ramdisk: Switch to CLI command for user interface

* Drop the old "echo to control device" interface in favor of an ioctl
  interface.
* Add CLI program "ramdisk" to manage RAM disks.