add service provider for OpenBSD

Adds a service provider for OpenBSD. This was split off of another pull request: #2177. This initial commit has the proposed logic in place. I copied the tests from the FreeBSD provider and fixed them, but that's not good enough--the tests don't yet cover what they need to. I'll be taking another pass at them, but I didn't want to wait on that to get the discussion started on the rest of the code.
There are a few functions which determine the state based on the service config files. Currently we will parse the file whenever we call these functions in the code. We can use the pattern below to reduce the number of file parsings:

```ruby
  def something
    @something ||= begin
     # Logic 
    end
  end
```