disentangle FrozenBindings and FrozenDict

FrozenDict might be useful on its own.
Makes it a bit easier to refactor this into utils when merged with rdflib!?!

warning: didn't know how to run tests, so test first!