Add defaults to swaplevel() parameters i and j
Closes #12934 feature request.

@brandon-rhodes I just updated master, so you will need to rebase as unrelated issue with python-dateutil will cause a test for fail :< (we are now skipping)
 did u mean to close this?
 No. I am used to the Phabricator work flow, and this pull request is teaching me the GitHub workflow :) Stand by!
 @jreback Okay, I pulled and pushed some stuff, and all the code reappeared. :) I added the issue number, and rebased against your latest master — let me know how things look!
 can u update tests for MultiIndex as well
 pls squash as well
 Oh — GitHub doesn't let you squash as you land the pull request? Yet another difference with the workflow I'm used to. Yes, I'll do the squashing myself, and also try addressing your two comments — thanks!
 yes I will squash on merge - since we rebase its usually a bit easier to use logical commits and squash 
 Just saw your comment — had already squashed on my end :) Per the Sphinx docs, I went with `versionchanged` instead, since it seemed closer to the intent of a change like this. I also found the only test I could find where the multiindex tests used swaplevel and supplemented it. Let me know what you think! (Also: wow, your integration tests take a while!)
 @brandon-rhodes lgtm.

any comments? @sinhrks @shoyer @jorisvandenbossche @TomAugspurger 
 This seems reasonable enough to me. :+1: 
 👍 
 thanks @brandon-rhodes 
 Thanks for considering this contribution from me! :)
