Make customizing the REPL easier

This is all the stuff I needed to customize the REPL in the way I want (mostly to hack in iTerm2 specific stuff), but I figure other people might have different needs, so if you have a specific customization need that this doesn't cover let me know. 

Basically what this does is expose a handle to the main REPL started by the standard library (`Base.active_repl`), as well as adding the interface as a field so you can customize it either later, or replace it entirely in your .juliarc.jl, so for example you could do (in your `.juliarc.jl`):
```
Base.active_repl.interface = Base.REPL.setup_interface(Base.active_repl;extra_repl_keymap = {...})
```
to add custom keyboard commands. 

cc @mbauman