Introduce protocol in connection_manager and client_cmdmanager for register and activation users method.
I will use this for daemon activation.
Changed daemon config structure, now the socket configuration are inside the relative method and there is a new key activate.
Activate will be used to indicate if the user is active.
Fixed bug in load_cfg method into client_daemon.
When we load the config form file we lose the order because we use a Dictionary instead of Ordered Dictionary.
Replaced build_default_cfg with save_cfg method.
Now we can manipulate the cfg after the first load to save modification.

Modified load_cfg method to use the new implemantation.
Simplified cfg loading.
Moved initialization of observer and relative operation in new method _initialize_observing.
Implemented the use of activation status.
N.B: this commit is BROKEN. Don't use for execution.
Created _activation_check method into client_daemon.
This will be used to check if the registration and activation is used and when is all gone right activate the daemon observing.
N.B: this commit is BROKEN. Don't use for execution.
Created ALLOWED_OPERATION constant.
This will be used to allow only activation operation from client_commandmanager.
Implement new activation status.
Now client_daemon will be wait until the status of self.cfg['activate'] become True to start the polling and observation.
This will be happen only if a user is activated.
N.B: this commit resolve the last BROKEN commit.
Fixed minor bug.
Now we create local_dir_state only if there is something to write.
Modified test_cmdmanager to use new implementation of returning value.
Added doc strings.
Divide test about activation in single unit test.
Modified tests to use new implementation of returning value.
Create environment for testing in test_connection_manager by implementing create_environment method and reassigned constant to new environment.
PEP8 fix and removed duplicated line.
Merge branch 'master' of github.com:corso-python-prato/share-system-team2 into daemon_init
Added tests for user activation for unexistent user and already activated user.
Implemented _build_directory method used to create folder.
Added custom sharing_path option in argparse for client_daemon.
Divide save_cfg into create_cfg and update_cfg.
create_cfg is used for initialization of configuration file.
update_cfg write into configuration file the actual state of self.cfg dictionary.
Added sharing_path option to customize sharing_path.
Fixed error about directory creation prints that not happen.