Added an 'assoc' combinator.
Added an ad-hoc (Maybe type) `assoc`.

It's very ad-hoc, because it requires the properties to be `Maybe`s so
a lot of work should be done in this concern. Anyway I think that it
shows the basics of our objective.
Added generic assoc/unassoc.

This was feasible because I've added a new typeclass `Modifiable`
which knows how to modify a property (yeap, the same Speech idea). Is
there any better way to do so? (monads, monoids...)

Anyway, assoc and unassoc require the container to be modifiable in
order to make feasible the link between entities.
Merge pull request #45 from jeslg/assoc

Assoc