Cleanup permalink generation

Fix permalink generation to not contain various smells. See verbose description in the last commit in this PR.
@mbj I was going to suggest `alias_method`, but yeah, I don't think it'll work on a dynamic method, so this is probably your best approach.

Although you *could* try doing something like:

```ruby
define_singleton_method(:find_by_param, method(:find_by_number))
```

I'm not sure if this'll work with a dynamic method or not. I suspect not, but it's worth a try.