Scene definition reorganization

Widespread reorganization of scene definition & styling rules. Combines changes from `mode-reorg` and `iwillig/style-work` branches. Renames render `modes` to `styles`. Implements new nested style rule parsing. Style rules are still WIP (and the main demo stylesheet is currently broken) but this is a functional implementation.
matchedRules is a array right? Some people consider this dangours. The reason beinging if someone extends Array's prototype, the forin will now iterate of those methods. Something to consider since this is a library and we don't control what people include in their site.