TST: Use tempfiles in all tests.

Includes @jreback's commits from #5422 and hdf_temp:
* TST: make pytables tests go thru a temporary dir and file
* TST/BUG: incorrect way of testing for r+ modes

TST: fix temporary files by using mktemp (rather than mkstemp) which opens them
TST: provide temporary file creation inside of io/pytables.py directly w/o
     opening a named temporary file
TST: named temporary file creation back to mkstemp in utils/testing.py/ensure_clean
Merge pull request #5425 from jreback/temp_file

TST: Use tempfiles in all tests.