Logical file transactions

implemented transaction objects to encapsulate db transactions