Enhance Str::limit() with an option to preserve words