updat TODO: iterative behaviour is now consistent
add DB_item_free()
use the (struct DBItem*)(*void)->prev field
fixed segfault in DB_item_free

  - FIXME: memory leak in DB_read() as reported by valgrind