Fix issue #2 - add ChildSelector.only()

    - This makes ChildSelector public, to avoid making things like
      descendant().only(1) possible
    - The state is collected in the parser, so the model is still
      "thread-safe". Live 'only' counts are held in a hash keyed
      off the model's NodeState objects.
Release 0.9