improvemened errors for rules, modify hypercube fixes

I think I disagree that this is the correct fix. Technically, the domain is a member and this code will happen to work if the domain is our builtin domain, but will be incorrect for any other hypercubes. I believe that the correct fix is to modify the hypercube builder to not add a domain, but only list all members flat without domain. We can talk about it offline :-)