Reorganize exceptions header.

Make it slightly easier to pick up doc comments for exceptions.
Document vm_function.h
Document vm_op.h

Too tired to do anything else, so this is my daily routine now:
documenting my VM headers.
Document memblock.
Document some more of vm_state.
Add doc comment for vm_state, remove rotting set_unit comment.
Add doc comment for vm_thread.
Document register constants.
Documenting things in vm_thread.
Documenting more members of vm_thread (and call_frame).

May as well knock them all out.

Also, some comment rot on call_frame::registers, since it incorrectly
stated that it was preserving volatile register values. This is wrong,
it's for non-volatile registers.
Document vm_chunk_offsets types.
Document vm_chunk_offsets member functions.
Document chunk_types.inl types
Document unit IO functions.
Doc comment for vm_value.
Document type codes and few other types.
Note about static assertions at the end of vm_value.h
Document make_value.
Remove stack_t type.

Unused in vm_state.
Doc comment for vm_opcode.