syscalls: bugfix: actually register callbacks before starting
syscalls: implement internal callbacks for each system call

The included python script parses function declarations and uses
the ARM or x86 system call ABI to autogenerate declarations and
empty definitions of callbacks taking the arguments of each system
call.
The default definition is weakly linked, so the user can override it.
The included system call definitions and weak_callbacks.* are valid
for ARM Linux.
syscalls: create target_asid typedef
syscalls: abort on 64-bit ARM
syscalls: implement get_return_value function
syscalls: object based ReturnPoint w/continuation called on return
syscalls: only return to clones in parent, not child
syscalls: add generic return list
syscalls: add initial Linux fd-tracker module
syscalls: makefile setting to enable/disable Linux fdtracker

The makefile can now be edited to conditionally add internal callbacks at
build time.
syscalls: fdtracker: track dups, reads, and writes
syscalls: mask out Thumb mode flag on ARM return addresses

ARM indicates Thumb (condensed opcode) mode by setting the low bit in
instruction addresses. This includes the ARM program counter, and addresses to
branch or return to.
The syscall tracker was comparing raw return addresses that may have the thumb
bit set with the actual virtual address of a basic block's first instruction.
We now mask out the Thumb bit, so that returns can be detected with minimal
architecture-specific code.
syscalls: internal API for pre-exec callback
introspection: add Android SDK JB 4.2 offsets and set as default kernel layout
syscalls: store "self" so we can initialize callbacks later

Storing a "self" pointer is required to be able to have the plugin
dynamically register callbacks with PANDA.
syscalls: fdtracker: propagate FDs through a fork

The fdtracker module registers for the return_from_fork callcback, so that
the parent will be caught executing. It also registers a pre-exec handler for
each basic block, to catch the child process if the child runs before the
parent resumes.
syscalls: fdtracker: track FDs across clone events from parent to child

As part of this commit, we move calc_retaddr earlier in the source file so
that the clone handling code can use it.
syscalls: fdtracker: include process name and file name in event log
introspection: enable DroidScope only if CONFIG_ANDROID and CONFIG_PANDA_VMI set
syscalls: fdtracker: intial socket-tracking code