Dupes: Increase perf by opening the db only once for each arg path

* Previously the db was connected to for each add,rm, or list operation
* Separate turning the free monad actions into db actions from their eval
* Allows a single db connection to be used to run an entire set of actions
* Massive performance increase