stmhal: Fix HAL error raising; make test for it.

Addresses issue #968.
stmhal: Improve CAN init so that it can take sjw, bs1, bs2 args.

Also update docs to explain how CAN baudrate is determined.
docs: Fix RTD build configuration.

ReadTheDocs needs the root directory in its search path so it finds
topindex.html.
stream: Convert .ioctl() to take fixed number of args.

This is more efficient, as allows to use register calling convention.
If needed, a structure pointer can be passed as argument to pass more
data.
stream: Implement seek operation support via ioctl, wrapped in generic method.

Also, implement for unix port.
tests: Add test for file.seek().
stmhal: Switch to file.seek() implementation using stream ioctl.
ports: Define mp_off_t.
py: Make stream seek correctly check for ioctl fn; add seek for textio.
README: Update link to logo.
Set PYTHONIOENCODING='utf-8' so that unicode tests can pass on CPython on
systems where another encoding is set in the locale
py: Add support for float/double arrays in array module.

Addresses issue #981.
windows: Update config with latest features

- update mpconfigport.h to reflect latest unix version
- fix compilation error in modure due to msvc not allowing dynamic arrays
drivers, cc3000: Cleaning up, make local functions static.
moduhashlib: Initial module skeleton.
moduhashlib: Add sha256 implementation from "crypto-algorithms" project.

https://github.com/B-Con/crypto-algorithms revision 100f4ff
moduhashlib: Integrate sha256 implementation.
tests: Add test for hashlib.sha256 .
stmhal: Enable DAC on STM32F4DISC.

Addresses issue #987.
Adding CAN filter management