Cavity Detection and Matching for Binding Site Recognition