Implement `only` binder and observer

Including tests and tutorial.
Add `join` observer

Including tests.  `join` and `split` are already accounted for in the
documentation.  `join` required some additional work to be reactive.
`split` does not since strings are content-wise immutable.
Add `sortedSet` block implementation.

* parse implementation and test
* stringify implementation and test
* expand implementation and test
* evaluate implementation and test
* observe implementation and tests
* tutorial
* grammar documentation
* observer semantics documentation
* syntax tree documentation
Note: `parent` operator (^) implemented
`join` and `split` algebra for two-way bindings
Verify that sorted responds to block changes properly
Update change log
0.2.12