Access is restricted via not showing in the following places:
* hide from sidemenu
* hide from panel header menu
* disable keybinding `x`
Also adds a `roles` property to reactContainer routes that will be
checked if `roles` is set, and on failure redirects to `/`.
* panel container menu gets new Explore entry (between Edit and Share)
* entry only shows if datasource has `supportsExplore` set to true (set
for Prometheus only for now)
* click on Explore entry changes url to `/explore/state` via location provider
* `state` is a JSON representation of the panel queries
* datasources implement `getExploreState()` how to turn a panel config into explore initial
state
* Explore can parse the state and initialize its query expressions
* ReactContainer now forwards route parameters as props to component
* `pluginlist` and `singlestat` panel subclasses needed to be adapted because
`panel_ctrl` now has the location provider as a property already
* mobx: poc in using each store as individual prop on the react containers
* prettier test
* fix: end the war between prettier vs tslint.
* mobx: Move stores into their own folders
* mobx: Refactor the AlertRule into its own file and add a helper-file
* mobx: Move NavItem out of NavStore and remove lodash dependancy
* mobx: Move ResultItem and SearchResultSection models out of the SearchStore
* mobx: ServerStatsStore rename .tsx => .ts. And move ServerStat-model to its own file.
* mobx: Remove lodash and jquery dependancy from ViewStore
* mobx: Remove issue with double question mark