starting point for implementing MapReduce