Unify locator chaining and locator nesting concepts

Boils down to:

Should `By.chained(By.id("1"), By.id("2"))` be the same as thing as `By.nested(getContext().find().element(By.id("1")), By.id("2"))`?

Pro:
- Simplifies design

Con:
- Potentially less flexible for implementations of darcy-ui? That is, if chaining is a shortcut for nesting, then if an automation library might have a concept of chaining that is __not__ equivalent to nesting, then that would require a new `Locator` implementation (By.concat?), and our `AbstractViewElement` default behavior would not consume this locator, unless that locator strategy made sense as part of core darcy-ui (which it could). In that case, `AbstractViewElement` would have to expose the locator that it may have been passed in its constructor to subclasses (and it may be null :().