Custom linux shell in C