Changed how the user space code allocator works (almost same as kernel space now) and changed where basic block info is located / stored.
Merging IBL entry stubs back into basic blocks, except for in the case of calls.
Working on changing the allocation strategy for basic blocks so that they are based on their predecessor basic block.
Tried out both trace and function allocators. They didn't perform as expected, but merit future investigation. Merged IBL routines and stubs into one, all inlined into a basic block (except in the CALL case).
Added aggressive conditional CTI tracing that is also policy-aware.
Added a special for optimizing the system call entrypoint code to directly look into a shadow syscall table.
Special cased syscalls
Fix libgranary.so path still assumes running in root of granary dir
Add ark client
Include correct wrappers in clients/user/posix/wrappers.h
Fault address doesn't matter and isn't actually set in si_addr
Tiny fixes in bounds_checker
Unmangle address on free.

This may not be required with the fixed list of detach points in user space
this issue was likely caused by granary losing control. Doesn't do any harm though
Add ctags to gitignore
Merge branch 'master' of https://github.com/Granary/granary

Conflicts:
	granary/globals.h
Merge branch 'tyler-working'