shell.c: Refine code to improve readability
shell.c: change read_line prototype to readline

Concerns:
1. man readline mentioned returned string was allcated dynamically
   rtenv not supported them.
2. Due to 1, a static buffer were used. That may caused reentrant
   problem if more than 1 task call readline() (not likely for now)
3. To follow the prototype, one more strncpy is involved. That means
   overhead.