Protocols defn & methods may be private.
Protocols no longer extend built-ins.
Fix some edge cases.
Write of tests of protocol usage tests.