a simple linux shell implementation