Add mount provider for Solaris OS and derivates

Conflicts:
	chef/lib/chef/platform.rb
	chef/lib/chef/providers.rb
code cleanup and simplification
be more explicit about API vs implementation

protected stuff is called from the superclass, private is private
to this implementation.
remove lots of code

the superclass is already idempotent and does converge_by and
stuff.  most of the double-checking here is redundant redundancy.
make sure functions return true after actions
fixes and func tests
lcr doesn't return cr
remove boolean returns + cleanup #mounted?
remove redundant debugging
turn mountable? into define_resource_requirements
syntax: remove do
use delegation
remove FIXME
unfished refactoring of vfstab editing
better tempfile handling
add VFSTAB constant
the #enabled? method had side effects
starting on unit spec tests
fixes and unit test progress
fix typo, thnx @juliandunn