Reduce allocations in SelectorMap (Rule Hash) code

Issue #1274

Also:
+ Reduce number of clones of Rule
+ Make Rule have Arc<Selector>