Improved compile-time validation for types expressible by integer literals

worth reading this post over: SE-0243: Codepoint and Character Literals - #167 by taylorswift (ignore the as coercion part lol)