RBAC-based tab completion for the CLI commands

https://issues.jboss.org/browse/WFLY-2119

This targets
- most of the commands (except the very general ones like read-attribute, read-operation, cd);
- some command arguments and suggested values (e.g. when offered to choose target hosts, servers, server-groups and profiles, those of them for which the user has no permissions, won't be suggested, or suggested actions may be limited, e.g. a user may only be able to deploy/undeploy existing application, but not add new and remove existing, etc).

For optimization of checking the permissions, the checks where possible are made on demand instead of ahead and are cached. The cache is cleared when the CLI disconnects (or reconnects) to the controller.

The feature is configurable in the jboss-cli.xml using access-control element and, atm, is disabled by default.

Alexey