Project: svg-chart
Task (moderate): In `common/Chart.js`, when `options.legends` is true or not defined:
- append g element (class `legends`) on the top of `svg`
- append g element (class `legend legend-{index}`) in `.legends`
- append circle (color is the same as `.dataset` line color) and text (content `dataset.label`) in each `.legend`

In `common/Chart.js` and `common/LineChart.js`, when `options.legends` is true or not defined:
- reduce `.datasets` lines height
- reduce `.axes-y` axis-y height, update axis-y labels position
- and make `.legends`, `.datasets`, `.axes-x` and `.axes-y` fill the entire `svg` space