replace json parsers with JrJackson and Oj

I did benchmarks for both a *typical* event json document of 1.3Kb and a huge 45Kb document for our big documents use cases.

1.3Kb json doc: from ~16k/sec to ~30k/sec
45Kb json doc : from 850/sec to ~3.5k/sec

my bechmark is using a generator input config
```ruby
input {
  generator {
    message => "stdin"
    count => 500000
    codec => json
  }
}
output {
  stdout {
    codec => dots
  }
}
```
and TPS measured using
```sh
cat file.json | (sleep 10; cat -) |  bin/logstash -f bench.conf | pv -Wbar > /dev/null
```

Here are the changes summary:
- new `LogStash::Json` class as abstraction for everything json
- new `LogStash::Timestamp` class to solve a Ruby Time + JrJackson serialization problem and cleanup everything timestamp related
- refactored/cleanedup `LogStash::Inputs::Elasticsearch` input and added a basic spec
To date, we've never encountered this. The '@' was explicitly chosen to avoid conflicts with other schemas. I agree there's a "what if?" factor about this, but it's never been observed to occur. More extreme, what if @timestamp is a number, or a hash? ;)