Special-case aliases, add warning comments to implementations

This is me finishing what @dstogov started. I spent an hour trying to figure out how it was possible that `is_long` and `is_int`/`is_integer` were doing different things in my bigints branch despite being FALIASes.

This should prevent any future confusion :)