Split terminal functionality (#71)

This is a work in progress.
Not sure if anything will come of it, but I am looking for some code review and general pointers.

*Do not* merge in it's current state, as it is obviously not finished.
*Do* play around with this and give me your feedback.