Cleaned up signal code; readline is compulsory

Signals are still broken for some reason I can't figure out.