Override `.pushStack` and `.end` to avoid reassigning `.constructor`

These are the only methods that make reference to `this.constructor`,
so by overriding them with the exact implementation except referencing
`jQuery` instead of `this.constructor`, we are able to leave the
`.constructor` field alone on our view objects.