Add readline tab completion

This was some work that was based on the context branch. Pressing tab in the console interface completes the symbol under the cursor. By default it only completes symbols which are accessible through the context path.