Query cancellation & timeout

maybe we should have a serializable exception and have this extend that