messily implemented checkbox select in GridView so that it's overrideable