docs/machine: Change sleep to lightsleep and add timeout arguments.
docs/machine: Change sleep to lightsleep and add timeout arguments.

The machine.sleep() function can be misleading because it clashes with
time.sleep() which has quite different semantics.  So change it to
machine.lightsleep() which shows that it is closer in behaviour to
machine.deepsleep().

Also, add an optional argument to these two sleep functions to specify a
maximum time to sleep for.  This is a common operation and underlying
hardware usually has a special way of performing this operation.

The existing machine.sleep() function will remain for backwards
compatibility purposes, and it can simply be an alias for
machine.lightsleep() without arguments.  The behaviour will be the same.

trezor/micropython,MrSurly/micropython,kerneltask/micropython,bvernoux/micropython,pramasoul/micropython,tobbad/micropython,tobbad/micropython,adafruit/circuitpython,kerneltask/micropython,henriknelson/micropython,pfalcon/micropython,henriknelson/micropython,henriknelson/micropython,kerneltask/micropython,selste/micropython,bvernoux/micropython,trezor/micropython,pramasoul/micropython,adafruit/circuitpython,pramasoul/micropython,pozetroninc/micropython,MrSurly/micropython,pfalcon/micropython,selste/micropython,pfalcon/micropython,trezor/micropython,tobbad/micropython,MrSurly/micropython,MrSurly/micropython,kerneltask/micropython,tobbad/micropython,pfalcon/micropython,kerneltask/micropython,bvernoux/micropython,selste/micropython,pramasoul/micropython,trezor/micropython,adafruit/circuitpython,pozetroninc/micropython,tobbad/micropython,pramasoul/micropython,MrSurly/micropython,henriknelson/micropython,pfalcon/micropython,adafruit/circuitpython,bvernoux/micropython,pozetroninc/micropython,adafruit/circuitpython,henriknelson/micropython,pozetroninc/micropython,selste/micropython,adafruit/circuitpython,selste/micropython,trezor/micropython,bvernoux/micropython,pozetroninc/micropython