bring blockwart.bundle to 100% coverage
add missing docstring
vastly improve testability

Repository objects can now be constructed entirely in memory, without having to write any files.

>>> repo = Repository()
>>> repo.add_node(Node("node1"))
>>> repo.add_group(Group("group1"))
add test for nonexistent repo