vm and sched changes

- Some changes related to copy-on-write vm things, should not break
  anything but it doesn't add any functionality yet
- No need for kmalloc in sched.c