The common package defines the interfaces that a protocol must implement and contain code that can be shared among supported protocols. This way should be easier to support new protocols
test cases migration to testify is now complete. Linters are enabled for test cases too
Fixes #97