Allow layers to have dependencies

In layers.json, a layer may have the property "dependencies" which is an
array of class names (`Dependency.js` is `Dependency`).

This ensures that an edit in a dependency forces a refresh of all
related layers.
Merge pull request #35 from ninjadev/layer-dependencies

Allow layers to have dependencies