Add a high level API for editing checklist items.

Until now the only way to mark a checklist item as complete
was to remove it and re-add it which is certainly sub-optimal
and also messes with the ordering of items.

The exposed API does have a mechanism for updating the name
and state of checklist items but it's non-obvious and
requires that the both the card id and checklist id
are known.

This commit adds a highlevel API to do this renaming and
state changing.

In order to not break API, a new method called 'getItemObjects'
has been added to suppliment the 'getItems' method of the
Checklist class. This new method will return objects rather
than a plain dict and exposes 'updateName' and 'updateState'
methods.