1) finished implementing abstract layer for map-reduce module

Signed-off-by: naazgull <pedro.figueiredo@gmail.com>