Accept both tarballs and pure-python wheels as sources
This redoes 0abf873d (Install egg from wheel only if explictly required), because that switch to install wheels only when explicitly requested broke things in several places[1,2]. We can avoid such breakage if instead of rejecting all wheels by default, we accept wheels, but allow only pure-python wheels to be installed.
As https://lab.nexedi.com/nexedi/slapos/merge_requests/1026#note_138639 shows detecting whether a dist is pure-python wheel is just
(dist.precedence == WHL_DIST and dist.platform is None)
So let's use this and rework egg installer accordingly.
This patch is completely untested. However the way to check whether a wheel is source-only was tested at https://lab.nexedi.com/nexedi/slapos/merge_requests/1026#note_138639.
If this patch is accepted and new slapos.buildout release is made, then all :whl usage in slapos.git can be dropped.
[1] https://lab.nexedi.com/nexedi/slapos/merge_requests/1026
[2] https://lab.nexedi.com/nexedi/slapos/merge_requests/1026#note_138590