Use custom encoding of blob content

Open username-removed-823271 requested to merge kolesar/gitlab-ce:encoding into master

What does this MR do?

Adds support to custom encodings (other than utf-8) specified in attributes file.

Are there points in the code the reviewer needs to double check?


Why was this MR needed?

To display raw contents of a file that has different encoding.

What are the relevant issue numbers?

#18151 (moved)