dashed lines

I've started porting https://github.com/mapbox/mapbox-gl-js/pull/649

Remaining:

- [ ] transition between splits
    - https://github.com/mapbox/mapbox-gl-js/blob/d734759cf136c9436711d91af89eca835a61a719/js/style/styledeclaration.js#L111
 - https://github.com/mapbox/mapbox-gl-js/blob/d734759cf136c9436711d91af89eca835a61a719/js/style/zoomtransition.js
- [ ] using line cap values from style
    - I'm not sure how this can be done without a lot of changes to stye parsing. Any ideas?
- [ ] line image patterns


@kkaefer does this look like it is in the right direction? any idea how I can get the line cap values where I need them?