Hello,
I have actually build a couple basic shells in C and would be happy to help you to build out exactly what you're looking for! It's funny, I've been dying to get back into my shell and add more features -- maybe this will finally push me back into it.
Either way I'm looking forward to hearing back.
Kindly,
Sam