Allow fully-yanked gems to be unyanked by the original owner

This still allows for a new user to swoop in and claim the gem by pushing their own version. Doing so would delete the previous ownership.
Refactor to yank a version directly rather than through its gem
Patch existing find_or_initialize_version_from_spec to make size an optional parameter.
size_in_kilobytes -> number_to_human_size
Change to cleaner syntax.
Add size to versions.
brought Chris's patch up to date and added a script to calculate sizes for existing gems
cleaned up Version#size interface
smoothed out size interfaces in Pusher and Rubygem
Add Badge link to Rubygem pages
Merge branch 'master' of git://github.com/rubygems/rubygems.org
Add test for badge_link helper
Fixed potential JSON injection by using #to_json.
Always dump Strings, never try quoting them.
Use public_send over send.
Moved erb.png into doc/
Merge branch 'master' of git://github.com/rubygems/rubygems.org
Remove unnecessary group by all columns

Signed-off-by: João Soares <jsoaresgeral@gmail.com>
Redirect searches with a single exact match.

When a search results in only a single exact match, redirect to the gem
page instead of showing the search results.
Lock gherkin to 2.11.6 since 2.11.7 has a stupid amount of deprecation warnings on things we can't control