Deprecate `@test_fails` in favor of `@test_throws`

`@test_fails` seems poorly named, since test failure usually means "my test didn't pass," not "my test threw an error."

I'm not sure if this is the best way to handle macro deprecation; I'd be happy to do something else.