New -n option for read builtin

Usage: read -n nchars
Reads maximum of nchars characters. If nchars <= 0, there's no limit which is the default.

As written in #1616, it would be nice to have. Please check the modifications carefully before merging. I'm not an expert.
There might be the same problem within `builtin_exit` and `builtin_return`.