Keypath and string arguments to formatters

This pull requests allows passing in keypaths (an observable object which triggers a re-computation of the binding when it changes) as well as string arguments (requires wrapping in single quotes).

This makes writing certain templates much easier and much more intuitive. For example, the following lists out items and will display their price in green if the user can afford and in red if they cannot afford the item. Changing either the item's value **OR** the user's balance will recompute that `rv-color` binding, all without writing a computed property.

```html
<input type="number" rv-value="user.balance">

<ul>
  <li rv-each-item="items">
    <h4>{ item.name }</h4>
    <span rv-color="item.value | gt user.balance | switch 'red' 'green'">
      { item.value | currency }
    </span>
  </li>
</ul>
```