Renderers custom edge shapes

Provides edge renderers working on canvas. It reads 'edge.type' to draw the corresponding edge. It currently supports 'solid' (def), 'dotted', 'dashed', and 'tapered' lines.