 		//*****************************************************************************************
 		//*                                     Public Methods                                    *
 		//*****************************************************************************************
-		public function CompositeCommand() {}
+		public function CompositeCommand() 
+		{
+			reset();
+		}
 		
 		
 		/**

		*/
		protected function executeNext() : void
		{
			if (!m_pendingCommands || m_pendingCommands.length == 0 && m_currentCommands.length == 0)
			{
				m_isExecuting = false;
				// we only dispatch a event if we're executing asynchronously

		public function addCommand(cmd:ICommand):void
		{
			// we automatically reset everything for a new run
			if (!m_isExecuting && !m_pendingCommands.length)
			{
				reset();
			}
