Encoding board state in location.hash

Kinda went down a rabbit hole with this one and ended up re-writing a fair share of it.. hope you don't mind!
The key idea is to store the buttons divs in a `@buttons` array on the `ButtonBoard`, and attach a pojo `_aelita` to capture some extra properties relevant to each button.

One thing I don't like here is that certain concerns started getting moved into the ButtonBoard out of soyuz (eg. the "on" state for each button). Maybe there's a new model needed in between.. ?

Anyways -- whaddayathink?