The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.


Scenarios:
	-Install a service
	-Configure an existing service
	-Delete a service
	
	-Running Services
		-Simple Service:
			-Service loop calls State() to check if a service state change occurs.
			-This scenario is being deprecated.
			
		-Callback Service 1 (one callback routine):
			-Service specifies one subroutine for all callbacks.
			-Validate that callback can either set state by calling State() or by returning state value.
			-Validate that the callback's context hash is good.
			-Test without a callback context hash.
		
		-Callback Service 2 (multiple callback routines):
			-Service specifies multiple subroutines for different callbacks.
			-Validate that callback can either set state by calling State() or by returning state value.
			-Validate that the callback's context hash is good.
			-Test without a callback context hash.
			
		-Threading:
			-Run a service that creates worker threads. 
??			-Test if service works using fork().
			-Use the "threads" Perl module.
			-Main Perl process thread MUST be the one that performs calls into Win32::Daemon.
			 Other threads can be created but all Win32::Daemon interaction must occur on thread 0.
			 
	-Validate that CallbackTimer() can be queried and set at any time.
	-Validate that hearbeat CallbackTimer is paused during a callback and reset when a callback returns.
	-Validate that events values are proper.
	-Validate that security works (eg passing in an SD or Win32::Perms object).