Restructure the project tree; optimise dumb math

Dumb math now caches the primary prime, i.e. the prime whose multiples are
crossed out. Why does this yield almost no performance increase?

In preparation of actually presenting this repository to people by the
reference in my paper, I restructured the tree so that simple/ is not
polluted with lots of stuff. This directory was distributed to three
directories under root.
Begin sieve algorithm; add config.h

Add asm/config.h. There is no point in autotools, etc. because we don't use
any standard library. Manual configuration is due. I momentarily disabled
the dynamic discovery of CPUs in favour of config.h. It's not difficult to
make the functions kick in in case config.h is missing (#ifdef's, lots of
them) but I _have_ a configuration, now.

Add syscalls and some rudimentary, really sketchy sieve. I'm embarrassed to
make this magnitude of confusion available to the world but hey, I just
generated 1.2GiB (up to 10e10) prime data in less than a minute :-)

There is no certain way I prefer to go now with the sieve. There are lots of
basic approaches to optimisations in the sources and a damn load of them
should actually be implemented and combined with each other.

NOTE: everything under tools/ is BS relative to the _current_ implementation
of the sieve. Oh, and this holds for gen235.c, too, but this was designed
for the current implementation. I look forward to soon tidy everything up.

Really make asm target first.

Fix DEBUG handling in Makefiles.

Add usual V environment variable as synonym for DEBUG_BUILD.

As sieve.lds makes the binary >30% bigger and apparently it runs even
without alignment for __tls I disabled that linker script. I'll investigate
since the sheer _presence_ of an empty linker script does this increase?