Allow decode() to perform stricter INI parsing

The decode function now takes a secondary opts object to control whether
strict-decoding is enabled. By default, it is not.

default opts = {
    strict: false
}

If opts.strict === true, do not allow a single line without an
equal sign to mark that it has a value.

[group]
foo=bar
bad  ; causes exception