Implemented the easy half of fork (data structures)

Next is to implement context switching so the child can run.
There are also a ton of things to clean up:

- Lot's of struct free-ing functions are not implemented and
  error cases are not handled (panic'ing instead)
- Still need to clean up the reference counting and open/close
  issues in vfs.