* Use react-grid-layout instead of gridster
* visualizations show and resize
* display slice name and description; links work
* positioning of widgets to match gridster, rowHeight matches
* Change margins, rowHeight, unpositioned viz, and expandedSlices to match gridster
* Saving dashboard, deleting slices, formatting on slices (chart control and resize handle), expanded slices fixed.
* responsiveness + use es6 classes
* Minor ui fixes + linting
* CSS transforms on slices messes up nvd3 tooltip positioning.
Turn off CSS transforms for the time being, with a cost of painting speed.
Issue is currently being looked at on the nvd3 repo
PR: https://github.com/novus/nvd3/pull/1674
* Remove breakpoint listener, fires when it shouldn't (i.e. too often)
* resize is no longer buggy, minor cleanup
* gridster class, const, landscape error
* one source of data for data to front end from python
* fix for default metric in table visualization
* better location for form override; covers all parameters
* remove dead code, use items instead of iteritems for python 3
* Periodically update the slices in the dashboard
* Make the refresh interval changeable
* Add the button and the modal for the user to change the refresh interval
* Don't use callback for refreshing
* Randomize to prevent all widgets refreshing at the same time
* Show the loading icon as an overlay when the slices refresh
* Fixing overwrite and save slice permissions for a give role
* fix function name - build failed
* fix function name and test user permissions
* disable the button in the UI
* fix build error - characters too long in 1 line
* try to disable button on the UI
* disable cursor in caravel css. You wont be able to click anymore if no access
* fix build issues
* fix build errors! god bless me
* disable main features in dashboard and slice
* fix build issues
* Move window.alert() calls to bootstrap modals. Also log errors that occur to console.
* move misc modal to basic template so it's available on all pages.