packagefs: PackageLinkSymlink: Fix crash on custom mount
vfs: dir_vnode_to_path(): Fix bug with chroot on mount

Simplify the code, which also fixes the bug that the I/O context's root
was ignored when it was a mount point, thus resulting in globally rooted
paths in this case.
Set the Haiku image's system dir to non-packaged

Set HAIKU_CONTAINER_SYSTEM_DIR_TOKENS for the Haiku image to "system
non-packaged". All the rules using the variable would put stuff in
directories that will be read-only in the end (and aren't used anymore).
This way they can be used in UserBuildConfig.
Add a simple RAM disk driver

* It uses physical pages directly, not wasting kernel address space.
* The user interface is somewhat crude, it uses writes to a control
  device (output to serial debug/syslog), e.g.
    echo register 4g > /dev/disk/virtual/ram/control
  to register a 4 GB RAM disk. It is published under
  /dev/disk/virtual/ram/<index>/raw and can be formatted with DriveSetup
  like any other disk. Unregistering is broken ATM.
* It's not on the image by default, but can be added via
    AddNewDriversToHaikuImage disk virtual : ram_disk ;
* I found it quite useful when working on large HaikuPorts ports.
  E.g. mounting a RAM disk at the port's work directory shaves a lot of
  time off disk heavy operations. Obviously one shouldn't let changes
  lie around on it without back up.