Constraint location rule fixes

- For now we don't allow setting the rule id
- Added preliminary checks for bad expressions
- Properly interpret role=master|slave when creating a location rule
Simplify constraint test setup to speed up testing