Python update 2

Finally happy to create this pull request; took me a while to test a bit the changes I made.
I wanted to first run the changes on a target; tested successfully on a ppc system.

Fixes:
- use `libncursesw` instead of `libncurses` since Python's build scripts will prefer that
- split the Python executable into a shared library so that 3rd party C extensions can use it; this splits most of the Python exec into `libpython` and makes the Python exec use it; the overhead is small (several kb) compared to the Python binary (around 5 MB)
- fix cross-compilation for 3rd party C extensions

Signed-off-by: Alexandru Ardelean <ardeleanalex@gmail.com>