tasks/task-mcuio.c: fix trivial warning (unused variable nranges)

Signed-off-by: Aurelio Colosimo <aurelio@aureliocolosimo.it>
lib/shell.c: fix bug in argv parsing

Signed-off-by: Aurelio Colosimo <aurelio@aureliocolosimo.it>
lib: atol function implemented in new stdlib.c src file

Signed-off-by: Aurelio Colosimo <aurelio@aureliocolosimo.it>
arch-atmega/uart.c: new baudrate cmd, to switch between 125K and 250KBaud/s

Signed-off-by: Aurelio Colosimo <aurelio@aureliocolosimo.it>
bitbang_i2c_func: use separate variables for input and output buffer lengths
bitbang_i2c_func: use separate input and output buffers lengths

Add/fix support for smbus cmds:

* Quick command: ibuf len = obuf len = 0.
* Send byte: ibuf len = 0, obuf len = 1.
* Receive byte: ibuf len = 1, obuf len = 0.
* Write byte/word: ibuf len = 0, obuf len = 2/3
* Read byte/word: ibuf len = 1/2, obuf len = 1
* Process call: obuf len = 1, obuf len = 2
* Block read/write: ....
mcuio: add functions for reading ram buffers
mcuio_bitbang_i2c_func: properly send slave address

The #write bit shall be set to 1 in case of read transactions with no
repeated start.
mcuio_bitbang_i2c_func: RECEIVING_DATA state: fix head management
mcuio_bitbang_i2c_func: use ram operations for reading from data buffer