This commit add the main components to run a simple RISC-V hart.
This hart implement all the RV32I instructions (excepted FENCE and
System instruction ones).
Multicore is not implemented as it would need first to implement the
RISC-V Weak Memory Ordering model into our harts.
Add the first implementation to represent an address space (through the
`AddressSpace` struct), that can be used by different objects which have
their own inner memory map.
The implementation use an AVLTree (right now it's just an ordinary BST,
as rebalancing has not been implemented).