ICommandManager improvements.

Hi, Here is a bit redesigned ICommandManager and CompositeCommand.
But i have some error in CanExecuteCompositeCommand, ive fixed it in nex commit but i dont know how to attach 2 commits to pull request.
Here is final code:

private bool CanExecuteCompositeCommand()
        {
			bool res = false;
			
            lock (_lock)
            {
				res = _commandInfo.Count > 0;
                if (res)
                {
                    foreach (var commandInfo in _commandInfo)
                    {
                        res &= commandInfo.Command.CanExecute();
                        if(res)
                            break;
                    }
                }
            }

            return res;
        }