Password echo echo echo

`login` and `register` now only require a username and then will prompt the user for their password. The password echo will be masked with `*` characters.

`Client` objects now can specify the echo. The default is for all valid characters to be echoed back as they are. Setting `Client.Echo = Echo.Mask` will return only `*` characters. Echo may be turned off by specifying `Client.Echo = Echo.None`.

Created `CommandFactory.GetCommand(string CommandName)` which DRYs up the command discovery performed by `ParseCommandFactory` objects and also makes it straight forward to add specific commands to a `ClientCommandHandler`'s parser. (See `LoginCommandHandler`.)