Initial working commit

Working:
 * Terminals
 * Simple hub
 * Sending to terminals
 * Sending through hubs