1) We use JHEAD to extract IPTC and EXIF information; this third party utility available for both Windows and *nix systems is very efficent at extracting the different types of meta data contained in a JPEG.
2) No, we do not store the info in seperate fields, although it would be easy to add a condition to search the single field which does store the data.
3) Unlimited, yes. You can assign an image to multiple categories by enabling the feature and selecting additional categoires during upload (or edit). Only a single copy of the image is stored.
http://www.photopostdev.com/photopost/index.php allows for multiple category assignments; feel free to register for an account and give it a try.