add text attribute horizontal-alignment="adjust"

Introduces `adjust` value to the text rendering attribute `horizontal-alignment`.
The length of the text with `horizontal-alignment="adjust"` is adjusted to the length of the path by dynamically calculated `character-spacing`:

![text-halign-adjust-800-800-2 0-agg-reference](https://cloud.githubusercontent.com/assets/1950911/4360525/b4847cb4-427c-11e4-8405-2abaec5e0682.png)

This can be handy for names of mountains or valleys:

![ex1](https://cloud.githubusercontent.com/assets/1950911/4360650/ebf9a18c-427d-11e4-825a-c767e1b44363.png)
![ex2](https://cloud.githubusercontent.com/assets/1950911/4360651/f1cb340e-427d-11e4-9bae-5cb187a0cba4.png)