Check repos for valid information when activating

* Don't activate repos where either `private` or `in_organization` is nil
* Return `true` when pushing to a job queue

Minor:
* Move enqueueing of `OrgInvitationJob` into the activator
* Use instance method for activator to cut down on redundant argument-passing
* Sort private methods into order in which they are called
* Use named parameters
* Use `.fetch` for retrieving hash values (raises rather than `nil`s)
* Avoid ternary operators

https://trello.com/c/fABEW1eM/391-don-t-allow-repo-activation-if-repo-is-missing-privacy-or-organization-information
I would love to not use `!` here - it's a personal pet peeve. I used it because:

* The spec for the card is to actually guard against `nil`, which is a bummer but that's the goal.
* `present?` is not the same as `!nil?` - [it's an alias for `!blank?`][1]. But `blank` is `true` if [false, empty, or whitespace string"][2]

If you think it's a reasonable substitution, I'm happy to use it, but I'm worried about the passing of non-`nil` values.

Let me know what you think.

[1]: http://api.rubyonrails.org/classes/Object.html#method-i-present-3F
[2]: http://api.rubyonrails.org/classes/Object.html#method-i-blank-3F