implemented map reduce vertex interface

Usage:
```cpp
struct float_max{
	float value;

	float_max(): value(0){ }
	float_max(float value){
		this->value = value;
	}

	float_max& operator+=(const float_max& other){
		this->value = std::max(this->value, other.value);
		return *this;
	}
};

float_max floatMaxAggregator(const graph_type::vertex_type& vertex){
	return float_max(vertex.data());
}

max_pagerank = engine->map_reduce_vertices<float_max>(floatMaxAggregator);
```