Splitting Math.h, better and working ASSERT, substring for StringP, requiring C11 instead of C99