Add some extra debug output.
CHANGES: automate the tests cases in test_id.c

Details:
All test cases in test_id.c are fully automated now to use the FileCheck utility.
test case file added: test/tests/test-disassembler-id.txt

Signed-off-by: Arun Prakash Jana <engineerarun@gmail.com>
Errors that cause the program to exit should be normal output, and not to debug_print.
Make the new test_id lit tests work.
FIXED: Make the dbg_print correctly call out to external C code even if called from CPP code.
	Remove code duplication.
FIXED: Some format statements were wrong. %x instead of %lx
This also reduces the amount of compiler warnings.
Added two FIXME to correct output later for more complex types.
Move the instruction decoder tests into separate files.
Change some printf to debug_print.
Update to use latest LLVM 3.5svn API.
Add int returned_label; to struct external_entry_point_s
and adjust the output to "test.c" with the correct label and therefore correct bit-width for the returned value.
Improve some debug statements.
Add some FIXME comments.
Link the CALL destination to a valid external_entry_point if possible
Add entry_point to node_used calls.
FIXED: Correctly pass "inst" instead of "node" to assign_id_label_dst().
FIXED: Correctly set start_address for CALL dstA value.
Minor fix to start_address in CALL instruction.
Add a new test case for the CALL instruction and the relocation offset.
FIXED: Enable the disassember callback for relocation info.
FIXED: typo in test22.c
Implement reg_params_size and fill in its value.