update to latest versions
dependency scope
externalize elasticsearch configuration
some generics
some more generics