selective undoing of commited transactions in PostgreSQL
You have a few options here.  If it is just committed transactions you need to worry about I would use a trigger-based solution. There are already extensions to help with this.  See, for example, e-maj and there is good documentation in how to roll your own, and 2ndQuadrant has released a version of an audit trigger on GitHub.

One of the key issues you may have is in determining how to handle rolling back of selective updates.  Do you need to restore a table to a specific point in time?  Or just a row?  With any solution here you are likely to have to roll your own solution to this part.  Tablelog does indeed appear to be dead, unfortunately.