Fixes relating to IPubsub interface
Added IPubsubClient and associated refactoring