Split syscall_insn definition since the syscall used by glibc might not be the one we use for remote syscalls.
Rename remote_syscalls.h/.cc to AutoRemoteSyscalls.h/.cc
Switch AutoRestoreMem::data to 'vector'.
Switch restore_scratch logic to a helper class.

Incidentally switches temp data storage from malloc to vector.
Remove filter functionality from iterate_memory_map since it's unused. Also removes memory-reading feature since it's not used.
Use variable-length array instead of malloc for temp storage.
Remove current_state_buffer and cleanup_code_injection since they're unused.