Refactored classes GenericPush,PublicanPush,PoPush,GenericPull.

Added construtor in base classe Push and removed duplicate code