Implement distributed map-reduce system as a framework with two client plug-ins in JAVA