ENH: Allow set_viewport to take tuple

Closes #246.

Ready for review/merge.