ARM lifting.

This PR adds ARM lifter, aka ARM disassembler.

The original disassembler was refactored into 13 separate modules with
clearly defined interfaces, so that we can later address the code.

The code is rewritten against new `Bap_types.Std`, all reference to Z
are removed, and all bit-logic is performed with bitvectors.

Polymorphic variants are used to represent instruction opcodes. That
allows us to perform matching on instruction classes. Thanks to that,
lifter was split into several functions.

All data types, like registers and instructions are now written
manually, and only the supported set of values are represented. No more,
thousands of instructions.

Lifter is quite fast, about 50 us per instruction. Although, I didn't
made any optimizations, and there are plenty of opportunities for doing
it.

What concering correctness, in all coreutils we have about 1% of unknown
instructions and 1% of lifting failures (all in one place - wrong
argument type of the offset operand, an issue will be created soon).

Also, I've slightly fixed BIL typesystem, since my last edition was to
strict and doesn't allow many valid BIL programs.
Changed output of immediates from decimal to hex.

This change affects the default printer in the C++ LLVM code, as
well as the BAP LLVM operand printing code.
[Iss #31] Updated version number to 0.9.

The last release of BAP previous to the move to GitHub was 0.8.
The current release is 0.9.  We will move to 1.0-alpha once we
are feature complete with 0.8:
 - Disassembler
 - Lifting for x86 and ARM
 - CFG generation
 - SMT binding
 - Python bindings.

See issue #31 history for discussion.
Merge pull request #39 from dbrumley/issue36

[Iss #36] Changed output of immediates from decimal to hex.
Merge pull request #38 from dbrumley/issue31

[Iss #31] Updated version number to 0.9.
Merge pull request #32 from ivg/arm-lifter-review

ARM lifting.