libstd: Change `slice_shift_char` and {shift,pop}_{char,byte} to return an Option
libstd: Add unit tests for `slice_shift_char`
libstd: Change docs for `slice_shift_char` and {shift,pop}_{char,byte}