Experimental Linux Support.

The code will now run under Linux.
But this is still experimental, and is not yet ready.