I don't know if this has been suggested. If so sorry for the repost.
Anyway, the bard/singer class I have in mind would basically just stand in an area and sing to give "happy points" or whatever it's called. You could designate the areas they would stand. Then my legendary fishermen immigrants would have a hobby.
Edit: Sorry should have been more specific. Idk why the original post even made sense when I typed it.
The last two links you provided are similar but not what I had in mind. Bards and Singers from the old times or the books you read with dwarves, (or dwarfs), would create songs based on events that happened during their time, in addition to learning the more popular songs of their local. So these Bards/singers, if implemented, would be able to have some random default songs, along with changing songs, (perhaps you could read the song by looking at a created item. "this song is about cacame slaying a the evil dragon menaced with spikes of bread"), which would fit in nicely with the already existing randomized flavor text feature.
You could specify a zone for them to do their "job" or just tell them to do it with no zone specified and they will go find a group of dwarves, a royal dwarf, a dwarf who needs cheering up, or a tavern and sing.
Also, I think there should be some form of competitiveness if more than one bard, (not sure if there should be more than one per fortress), is allowed to exist.