Initial commit. Basic structure. Some implementation

This largely has the structure in place for the implementation of most
of the functions in the original Bacon implementation. Currently most
of the actual implementations are not done, and anything already done
is only partially tested.

This can be considered an alpha library right now. Breakage may occur
with anything. Most features are not done. It may be slow and
unoptimized. It is mostly thrown together quickly to just get the basic
structure in place.

You may also notice some similarities between this and some of the code
in the Functional Java library. I am taking their designs as
inspiration for how to put some of this together, such as the F
interfaces.

Please add implementations or whatever to this as you see fit. Fix
things, improve them, make them faster. I want this to exist for my own
personal use, so that faster and better it gets done, the happier I am.
Ignore IDE files