Refactoring of lexical_cast: splitting into multiple headers #1