TableauxState now stores all visited rules

When we meet an AtMost/AtLeast/Exist/ForAll concept, we store it
at the rules filed of TableauxState record, for future use

* TODO: We need to take care of the CGI rules too
ForAll seems to work in every place of the model

TableauxState hold all ForAll occurances and re-apply them
whenever a role assertion is encountered
AtMost seems to work in every place of the model

TableauxState holds all AtMost occurances and re-inject them to
the model in order to re-check for any possible rule violation
AtLeast seems to work in every place of the model

Each time an individual substitutions is happening, not only model
is re-checked, but the visited rules too.
A new function was created for this reason: 'isConsistentWithRules'