+ added support to store to and load from streams instead of just files