basic implementation

porting/extracting what's in [Lyrem Ipsum's `LyricsWiki`](https://github.com/alxndr/lyrem-ipsum/blob/43c822b9/app/models/concerns/lyrics_wiki.rb#L4-30)