(WIP) Replace erlang cookie fact with type and provider

Alternate proposal to #278 
```ruby
fail 'blah' if (is != should && self[:force] != :true)
```
and other rubyisms would read easier on me