refactoring around Signal and Error
created Error.h/.cpp
renamed Signal::Message -> Signal::Shared
implementing Signal and Error
implementing Signal and Error
implementing error message