Implement Future::all

closes #1