[REBASED FOR REVIEW] XD-954: Shell code completion for stream definitions

I recommend considering this for merge (after proper review of course), even if not plugged on the updated shell, as the majority of code here is tested through unit tests and keeping this PR up to date can be quite painful.

~~Not ready for merge, as this requires https://github.com/ericbottard/spring-shell/tree/SHL-116-QuotesEscaping (hence changed version in build.gradle)~~

Sadly, does not provide completion for module names, as another refactoring would be needed in case of parse failure to know exactly what kind of module would be expected (or else we would propose false positives).

The general infrastructure is there though, and adding that will be really easy afterwards.

Still requires polishing, but it's here for you to play with