Serious refactor.
1) sage.py - the 'aspects' field is no longer a 2D array, it's a 1D array with all of the top nouns and then the top adjectives
2) utils.js - no more flattening of aspect descs and aspects
3) sage.js - aspect circles use the ID from the original aspects list as their ID, not the index of the data array which is passed to the update() method. Also, the aspect chart follows the pattern of initialize() and update() that the line chart does. It's possible to click aspects and update views of ratings donut and time rating line.