FutureGrid: a distributed testbed, exploring possibilities with Clouds, Grids, and High Performance Computing