stupid huge commit to implement d3 using angular services and directives