I thought, if we move the write function to Term::write() (disqussed in #81), shouldn't we just move all function there including the console_is_a_tty outside of the class into the namespace? I think that would look better. You can use using namespace Term to just use the namesapce and skip the Term:: part.