(TK-62) `defservice` doesn't work with protocols in other namespaces

As of TK 0.5.0, calling `defservice` on a protocol that was defined
in a different namespace would raise an error.  This had to do
with not properly namespacing some of the symbols that were
generated by the macro.  This commit makes sure that the symbols
are explicitly namespaced where appropriate, and adds a test that
validates that it is possible to define a service based on a
protocol from another namespace.
I have no idea, neither how it got there or how it wasn't breaking anything.  I'm guessing it was being interpreted as metadata.