sampledBy using Bacon.when

If we get #233 hammered to master, we should also merge this one. Lots of LOC removed here too.