Add repeat-distance to text symbolizer properties.

Update collision detector to handle minimum-distance and repeat-distance seperately.
Update placement_finder to use repeat-distance.
Update group symbolizer to handle minimum-distance and repeat-distance.
Add additional test cases to demonstrate use of new attribute repeat-distance by itself and combined with minimum-distance.
remove unused includes
mapnik::util::variant in mapnik::value
Merge branch 'master' into custom-variant-2

Conflicts:
	include/mapnik/value.hpp
replace boost::spirit::karma alternate operator (uses boost::variant) with direct util::variant to string conversion
value traits to control to value conversions + fix is_null
use is_null_visitor
add link to custom generator TODO
transform : is_null_node visitor
topojson - revert to using boost::variant for mapnik::topojson::geometry (TODO)
Merge branch 'master' into custom-variant-2

Conflicts:
	include/mapnik/value.hpp
add getter interface compatible with boost::variant
expose cairo_renderer<cairo_surface_ptr>
convert symbolizer properties to use util::variant
fix cairo_renderer usage in demo/viewer + revert aac69d0b34203f856070cfe5bf909fbf84853b7f
Merge branch 'master' of github.com:mapnik/mapnik into jh-min-repeat-distance
AGG/Cairo - fix pattern opacity
Merge branch 'master' of github.com:mapnik/mapnik into jh-min-repeat-distance
remove duplicate typedef for dash_array