removed IEnumerable interface so Execute needs to be called. This will make it easier to get one result through ExecuteSingle and also makes it more clear that no actual reflection is done until Execute is called.