Disable / hide MR edit blob button if cannot edit.

UI changes on the merge request diff view:

- if the user does not have permission to edit the blob, disable the link
- if the blob is not text, hide the link

This is the same behavior as for the blob show edit button. Both buttons have been factored out.

The blob show edit button is unchanged.

Before this, there would be a clickable link to a 404 or to edit binary files as text on the page.

Screenshot of disabled Edit link:

![screenshot from 2014-09-28 11 00 53 disable edit mr after](https://cloud.githubusercontent.com/assets/1429315/4433779/97c20602-46ee-11e4-8d7b-8e1c85a6416f.png)

This solves half of: https://github.com/gitlabhq/gitlabhq/issues/7310

Would it be possible to split this method a little? Make it a bit less complex? If not, no problem :)