Refactored classes GenericPush,PublicanPush,PoPush,GenericPull.
Added construtor in base classe Push and removed duplicate code