better id handling for rules

- rules now deal in strings of ids (they can be created on game side,
using name/class strings, arrays of locations, cards etc, or a single
location, card etc)