kv.rb new features

Hi,
This is the pull request elasticsearch/logstash#1486 from [elasticsearch/logstash](https://github.com/elasticsearch/logstash) you asked me to reopen here
the features:
* support spaces between key and value_split
* support brackets 
* recursive option