kernel: fix issue with mapping of directory tables

The directory tables were being overriten just after being identity mapped with
the user flag. This made them not-user, which resulted in never being freed when
the process ended.
kernel: keep track of tables when copying dir tables in fork()