Fix #30; permit nested defaults

Nested default arrays will be ignored. Nested default hashes will be
merged with user input.
Fix #38; use default when given nil

I'm a little concerned about the change from `options.delete(:default)`
to `options[:default]` because I don't know why it was being deleted.
@AaronLasseigne changed it in e6946955b9261ebf904fb85eef73e9d9f8021513.
Update changelog
Merge branch 'master' into v0.3.0
Merge branch 'master' into v0.3.0
Fix #39; add message to invalid interaction error
Fix #36; improve nested attribute error messages
Update changelog
Merge branch 'v0.3.0'

Conflicts:
	CHANGELOG.md
Version bump to 0.3.0