Clean up pass over output APIs used by exporters
- Reworked _p() and _x() over new indentation-aware output APIs
- Added proper APIs for setting indentation, EOL sequence, and value escaping
- Moved functions intended for exporters to premake.lua (with generation and validation calls)

--HG--
extra : rebase_source : f36015e95e5b889e28db48b61df1669a27a3217b
Route all output through premake.out() to simplify interception and overriding.
Fix a related bug in the C++ makefile generator.