Kinda want to shove all this stuff into `astropy.utils.compat`