More cleanup and Protocols improve

some cleanup of loops over STLs
more parsing of Protocols
Start of support for translating