Implement Caching
This commit will implement caching with the launchd provider.
Class instance variables are now being used to pass information
between classes. Comments have been added to each method that
has been modified. Launchctl has been restricted to a single
call per puppet run, but plutil must still be used to convert
all plists to XML.