Allow empty values

It is a legitimate use case to set empty values; to override a
default when an empty value is acceptable for instance. This patch
changes the regex in three ways: it 1) removes the requirement for
a non-whitespace terminator on a setting value, 2) makes the value
match non-greedy so that the \s*$ at the end can catch the newline
and 3) changes the \s*=\s* to [ \t]*=[ \t]* because we don't want
that to capture *any* whitespace (like a newline).
Merge pull request #52 from otherwiseguy/master

Properly handle empty values
Tweak the Gemfile to be better for development, add a Rakefile.
support for whitespaces in settings names (need for smb.conf)

smb.conf contains settings names with white spaces, for example

[globel]
server role = active directory domain controller
check password script = Disable
Merge pull request #53 from apenney/51-ivanov-aleksey

Replacement for #51
Test only against the versions we want.
Merge pull request #54 from apenney/travis

Test only against the versions we want.
add a type to test inheriting from ini_setting

In order to test with rspec-puppet we need to set up the fixtures, and test via
rake spec, so we change that too
add a test for creating subclassed instances
Fix the sample usage in the README

If you follow the example in the README you may not have implemented the
:key_value_separator parameter in your type, and you get the wonderful failure
case:

   Puppet::Error: Invalid parameter key_val_separator(:key_val_separator)

This change looks first, and if the user hasn't specified that attribute in
their type in their type, it falls back to '='
actually write a file in spec/fixtures/tmp

This is useful for testing with puppet apply
allow for the namevar construction

The default type would always have a section as part of its namevar, but if
you're inheriting from ini_setting you may be modelling a flat file with no
sections.

This pushes the formation of the namevar from the section_name and setting into
a method, then demonstrates overriding it so that inherited_ini_setting can just
be

   inherited_ini_file { 'setting':
     value => '12',
   }

and continue to be purgable.