misc unlink / rmdir fixes

Backporting a few more fixes from the vfs branch:

 - rmdir / unlink no longer follow the final symlink (when you unlinked a symlink you were removing the object it linked to)
 - rmdir / unlink no longer check write permission on the found object, but on its parent
 - rmdir should return EBUSY when path matches the root / cwd. http://pubs.opengroup.org/onlinepubs/009695399/functions/rmdir.html says it's unspecified if rmdir fails and sets EBUSY in this case, but on Linux it does. Currently we set EACCES when the dir === root and EBUSY when dir === FS.currentPath. I can't find anything supporting setting EACCES.
 - unlinking a directory should return EPERM according to POSIX (EISDIR is a Linux convention)

The test was given similar treatment to the rest - JS deps removed, it's now less cryptic and symlinks are tested to boot.