Add threads, add buttons functionality, add multi key support.