REFACTOR: Turn the binary_file_decoder into an object.
Using a void *handle and accessor functions.
This will remove the dependancy on libbfd and libopcode from all modules except the binary_file_decoder.
This is required as we start to use a mix of C and C++ code.
The code base in mostly C, but it interfaces with C++ in the LLVM IR export.