* upgrade celery to 4.0.2
* using Redis for unit tests (sqla broker not supported in Celery 4)
* Setting Celery's soft_time_limit based on `SQLLAB_ASYNC_TIME_LIMIT_SEC` config
* Better error handling in async tasks
* Better statsd logging in async tasks
* show [pending/running] query status in Results tab
* systematically using sqla NullPool on worker (async) to limit number
of database connections
* get compiled js file names
* make manifest available as template var
* use script src directly to avoid flash of unstyled content in the case of csstheme.js
* linting
* attempt to fix tests
* exception
* print the path when no manifest file found
* handle case when manifest.json is not present for some reason, or in the case of tests
* [big number] various improvements
* dynamic number of X axis ticks based on width to prevent label overlap
* corrected overflow on the x axis
* improved tooltips (precise arrow and visible data point circle on hover)
* Fixing tooltips in heatmap viz
* react: using prop-types package to fix deprecated React.PropTypes property warning
https://facebook.github.io/react/warnings/dont-call-proptypes.html
* removing babel devDependency because has been deprecated in favor of babel-cli
this fixes a warning during `npm install`:
```
npm WARN deprecated babel@6.23.0:
In 6.x, the babel package has been deprecated in favor of babel-cli.
Check https://opencollective.com/babel to support the Babel maintainers
```
* js: setting ExploreActionButtons.queryEndpoint PropType as required
because it's required in the child component DisplayQueryButton
* js(tests): using object in expandedSlices prop type of SliceCell tests
* js(tests): adding required props to SqlEditor mockedProps
* js(tests): adding required prop editorHeight to TabbedSqlEditors mockedProps
* js: removing unused moments dependency
* Fixing PropTypes warning message
React recently started warning on the upcoming deprecation of
React.PropTypes, the new approach is to use the `prop-types`
npm package instead.
* Fixing the tests
* make react-virtualized table work
use dynamic sizing for cell width
enable filtering
require height prop for result set component
* fix tests and linting
* move some state to props
* move getTextWidth to visUtils
* make striped rows optional
* fix striped proptype
* update name to FilterableTable
* add basic test and fix linting
* accept array of columns keys rather than an array of objects that needs to be mapped
* move container div inside the component
* rename styles
* fit table component to width if it's smaller than parent container
* move stylesheet to javascript folder otherwise it throws an error on npm run prod
* move css to index.jsx
* fix result set spec
* fix linting and test
* fix result set props
* keep list immutable