Added new `By` reactor

Took a stab at #36. If I understood my test output correctly it seemed
to be creating new streams on each change of value. Test is in the
works.