Gl lines

@jbeezley this is not done yet. But have a look at the API change and let me know what you think of it. Also, once we both agree on the API, then I will let you update the d3 code. 
:+1:  I like the API. It looks like d3 nested selections.