Added bounds, device_array, rudimentary test