Using the 'peer' binary as the cli has caused much confusion. (At least it's confused me...) In addition to being used to interact with the orderer, it relies on configuration data from core.yaml - something that is intended to be consumed by a server side component.
We want to decouple the server side configuration from the client configuration and, in support of that goal, we want to move peer subcommands to a new fabric cli.
The new cli should support chaincode, channel, version, and lifecycle subcommands. The node command should not be present.
For this first phase, the behavior and configuration of the fabric sub-commands should be exactly the same as they are for the peer command. We will use this overlap to aid with the transition from peer to fabric in tests and other consuming components.