Add base virtual classes for Hv and Cipix, and Dream class.
This MR adds base classes for Cipix and Hv. Hv was gotten from what Cascade and IBM had in common. Cipix was copied from dream.
Since Hv and Cipix are vitual classes, the responsibility for initializing the base class is still in the final derived class. It would be nice to add in the future a non-virtual CdtHv class that comunicates with a cdtHv device, no matter if it is Cascade or Ibm. Anyway, that's for the future.
Since some register names were different, the last commit until now renames the registers in what was copied from dream to the same standards of the current register map. The final addresses are the same though.
Hopefully, this will allow us to write less code and implement the same functionalities in the future.