Generalize cppint into a c_literal function for all literals

This removes some scattered duplicate code, and adds support for
suffixed floating point literals like 3.0f which aren't valid python.
Merge branch 'fix-clang-float-suffixes' of github.com:girving/xdress into girving-fix-clang-float-suffixes
some c_literal() cleanup