Allow repo names with ".git" in them

@charlierudolph @allewun   implements #305 

* fixes a bug where repo names that contain ".git" are improperly handled when creating PRs. This happens if you want to create a PR for an Originate blog post. The repo name there is "originate.github.com".

* simplifies the repo specs. The repo specs always seemed over-engineered and cryptic to me. What does "HTTPS not ending with .git" mean? How exactly does the respective URL look like? Does this really cover all possible remote URLs? This over-optimization made the specs hard to read, and hard to maintain.

  I needed to add a different repo name to the specs, and that made the existing tables completely ridiculous. So I simplified them. Now we can give as many different origin URL as we want, even broken or strange ones, and make sure Git Town behaves correctly. The spec becomes more understandable for strangers, and I was able to remove a good amount of pretty complex test infrastructure.

What do you think?
You are inventing new paradigms for assigning steps to files here. Which is fine, but we should be conscious about it. I think the natural place for the first two is browser_steps, for the last two run_steps. That sounds good to me. The notion that all definitions in a file start with the same two words seems insignificant to me since we don't use the verb for file assignment, but the object.