Allow literal dot in config section names

BugzID: 15952
Merge pull request #3 from cloudant/15952-allow-dots

Allow literal dot in config section names
Add a "Reason" parameter to config:set and config:delete

This is intended to support better auditing of config changes. Existing code
and tools will be handled gracefully.

BugzID: 20326
Merge pull request #4 from cloudant/20326-config-reasons

Add a "Reason" parameter to config:set and config:delete
set module version to 1
Type-safe config:get and :set methods

BugzID: 25731
Guard get/set/delete to require list arguments

BugzID: 25731
Merge pull request #5 from cloudant/25731-type-safety

Type-safe config:get and :set methods
Merge remote-tracking branch 'upstream/master' into 1843-feature-bigcouch

Conflicts:
	src/config.erl