Add function to associate keyvals in objects

Defines `lt.object/associate!`, a new function that calls `assoc-in` on the state of an LT object. (Nothing too important; just a small addition for caller convenience.)

Functionally, it is a subset of `object/merge!`, but it allows to update or create deeply nested key-value pairs in a more readable fashion when the pre-existing state is irrelevant. E.g.:
```clojure
(object/associate! obj [:deeply :nested :key :value] 1)
```
rather than
```clojure
(object/merge! obj {:deeply {:nested {:key {:value 1}}}})
```
or
```clojure
(object/update! obj [:deeply :nested :key] conj {:value 1})
```