abstracted ORM that adapts accordingly to the selected protocol_handler