transaction support added and tested; full string cache added