Added 'anchored' flag to MatchContext

The 'anchored' flag influences the behavior of BetweenMatch. Matches that depend on the presence of a particular pattern or position in the input text cause the context to become anchored. BetweenMatches cause it to be unanchored. Other matches do not influence the anchored flag.
Added cursive interface for adding actions, rules, etc.
Switched BetweenMatch to new execution model
Added unit and integration tests for BetweenMatches
Adjusted interface for AlternativesMatch
Put all BetweenMatch tests in one place
Switched SearchReplaceMatch to new execution model
Added unit tests for SearchReplaceMatch
Renamed package 'baon.logic' to 'baon.core'
Adjusted copyright in headers
Moved positional matches to their own package

Namely, StartAnchorMatch and EndAnchorMatch
Moved SearchReplaceMatch to 'special' package
Added guard against auto removal of 'tokens' var
Renamed 'composite' match package to 'control'
Bugfix: Search/Replace must capture aliases

I.e. aliases captured during a search-replace WILL be visible to the outside scope.
Switched Rule to new execution model
Added unit tests for Rule
Minor corrections in RuleSet interface
Added unit tests for RuleSet
Added unit test for ApplyRuleSetAction