Add Future and Stream interfaces; move code to src folder