change add_groups_from_files_for_tagging to add_groups_from_texts_for_tagging to allow tag the text directly.

i think it's easier to tag from a file. note the StringIO won't work, since it doesn't has a file descriptor
so use fmemopen to create a fd from string. for those don't have fmemopen (like macos) use the fmemopen impelmentation from https://github.com/jverkoey/fmemopen