Basic support for merge policies

This includes basic support for merge policies including several "atomic" policies and tests on same.

Also includes foundations for later extensions including combinators to combine atomic policies to express more complex business rules.