archiver: initial port to new code structure

Signed-off-by: Jiri Kuncar <jiri.kuncar@cern.ch>

Conflicts:
	setup.py
fix exporting json metadata to bagit

The json metadata that an invenio record provides through .dumps() is
not in a compatible format for bagit.make_bag(). The metadata it excepts
is a dictionary that contains only string, or list of strings. An issue
to bagit-python is open [1] to question if that is their intended
behaviour.

Our current solution flattens the metadata dictionary by json.dumps()
all values. They are later recovered with json.loads().

[1] https://github.com/LibraryOfCongress/bagit-python/issues/31
first implementation of irods archiving

this is the first version that does not crash :)
the api is now in api_irods, not to have conflicts with the original one

it can
1. put bagits on irods, a new version for every put, distinguishable by
    date
2. get the latest version from irods
(3. mount this archive, but that has not been tested)

I don't completely understand the archivin API, so understanding how it
can be used will influence the further development.
Refactorings can be done to encapsulate the irods stuff more.