Backend processing & generalizer

This adds the framework for backend processing of vector tile geometry and includes the first try at a generalising processor and a simple test for it.
Yup, that's what I was trying to say. I think we should put an issue in to change it to `scale`, which is more in keeping with the rest of mapnik. Conversion of zoom levels to scale can be done when the config file is loaded, giving people the opportunity to re-use avecado where non-900913 projections are used. What do you think?