This also implements the fault handler correctly now, and cleans up the exception handling. Seems a lot more stable now, no unexpected panics or faults happening anymore.