Protocols as First-Class Concepts