transform the association input so we can avoid type checks later.

We should consider moving the input munging outside the class
instantiation
we can get a list of reflections from the join parts, so let's remove
the @reflections ivar.
keys are always symbols
associations is always a hash
use the API rather than accessing underlying data structures