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
Update .sync.yml to support new .travis.yml configs
Calculate client workspace name for test case

(The value of host will be different)
Synchronize .travis.yml
Add module-specific travis script to .sync.yml
Update Gemfile for .travis.yml defaults
Merge pull request #185 from cmurphy/master

Synchronize .travis.yml
Fix issue with node changing every checkin
Merge pull request #181 from jbussdieker/fix_resource_change_every_checkin

Fix issue with node changing every checkin
Merge pull request #171 from p4paul/master

Basic Perforce provider