A.
must implement the Ethereum protocol and external access can only be done via the proprietary Ethereum Libraries like Web3.js.
B.
must implement the Ethereum Protocol and a JSON-RPC to talk with clients.
C.
must implement Web3.js to interact with Websites.