Basic Perforce provider

Supports sync and client create/update
Markdown and examples
Spec tests for p4 provider

Test create, destroy and exists? access points.
Add support for passing password/ticket

Uses param ‘p4passwd’ to set P4PASSWD environment to pass a valid
ticket or password.
Detab to 2 spaces.
Moved p4.markdown content to project's markdown
Added support for p4config.

- Removed p4port, p4client, p4user to keep name space clean.
 - Changed notify to Puppet.debug
 - Updated markdown and examples
 - Updated unit tests
Add hostname to Digest for default client name.
Support streams and fix Marshal for 'p4 cstat'
Sort keys on hash generate same test result.

Keys in the Client spec were processed out of order and failing tests.
Clear P4CLIENT Environment before test
Calculate client workspace name for test case

(The value of host will be different)
Merge pull request #171 from p4paul/master

Basic Perforce provider