Updated code block UI and unit tests to use CodeCompletionServices

In this PR, I have updated the `CodeBlockEditor` UI class to use the new `CodeCompletionServices` APIs for code completion as well as rewritten unit tests to use `CodeCompletionServices` independent of the UI.

@Benglin PTAL.
Interesting, any example? Just being curious... was it accidental that white spaces are appended to method names? If so that would be the right place to fix and not here. I must be missing something obvious here :)