All of that should be separate pull requests. Big Honking Pull Requests are harder to review and are more likely to be bike-shedded to death.
RE: not relaying/mining transactions with OP_NOPs so miners don't mine up-version transactions that are invalid under future-new-rules: I'm not convinced it is worth adding more code (more potential for bugs) to protect against something that isn't going to happen because up-version transactions are non-standard (due to version check) in any case.
In any case, lets make that a separate pull request.
I'm going to take the lack of immediate "That's a Terrible Idea!" as rough consensus...