tighten up /etc/rc.conf regex

I've run into a fun issue on FreeBSD 10 when trying to disable `syslogd`,
and enable `rsyslogd`.

Initially, the /etc/rc.conf config file may look something like this

    syslogd_enable="YES"
    rsyslogd_enable="NO"

And after chef it *should* look this

    rsyslogd_enable="YES"
    syslogd_enable="NO"

However, because the regex isn't as tight as it could be, it will search for
`syslogd_enable="(\w+)"`, and erroneously match the `rsyslogd`, which leads
Chef to believe that `syslogd` is enabled, when in reality it isn't.  This change
simply anchors the regex with `^` so the pattern must match at the beginning of
the line.
another instance of loose regex
add trailing = to regex for freebsd service deletion
modernize freebsd service spec
refactoring freebsd provider + unit tests
add checks for partial matches in enable/disable
add right-match tests for rc.conf
better regex in /etc/rc.conf for service state
test for none case
implement @btm comment about test description strings
combine "no" and "none" freebsd services based on @btm comment
Update CHANGELOG for #1833

Closes #1833.