Refactor XML handling to use attoparsec and Data.Text

- Using attoparsec, and seems to be working.  Further work need to eliminate String from the parsing paths
Add example for a component and a client
Merge branch 'master' into attoparsec-refactor
Merge branch 'master' into attoparsec-refactor
Switch to Text for IO

- Remove dependency on utf8-string
Convert XML directly to Text rather than via String
Ignore *.p_o files
Convert to using Text internally

- Should still refactor some of the parsing code
Modify XML parser to use specific attoparsec parsers
Fix a couple of warnings