now that Preact X is out (and after sorting out urgent issues of course), it makes total sense to make a functional counterpart of this library :)