workflows: docs improvement

* Adds better module documentation on how to use workflows.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
workflows: object get_workflow_name function

* Adds a new get_workflow_name() function to BibWorkflowObject.

* Changes the __all__ variable to a tuple.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>
workflows: cache update

* Changes usage of Redis cache to use invenio.ext.cache.

* Removes duplicate code and restructures code with focus on
  re-use.

Signed-off-by: Jan Aage Lavik <jan.age.lavik@cern.ch>