I read that there needs to be an EFI system partition.
Wikipedia - http://en.wikipedia.org/wiki/EFI_System_partition
The EFI System partition is a partition on a data storage device that is used by machines that adhere to the Extensible Firmware Interface. It contains the boot loader programs for all operating systems installed (in other partitions) on the device, device driver files (used by the firmware at boot time) for other devices, and system utility programs that are intended to be run before an operating system is booted.[1]
EDIT: Is this partition created automatically and is it the first partition on the disk? If not, how do you go about creating it?
I also read that there needs to be a particular file on a certain partition called *.efi.
Wikipedia - http://en.wikipedia.org/wiki/Unified_Extensible_Firmware_Interface
UEFI does not rely on a working boot sector only, but needs a special partition table referring to a special partition containing a specially located file with a standardized name depending on the actual architecture to boot (\EFI\BOOT\boot[architecture name].efi).
Are these one and the same partition, or are these both separate and necessary structures for booting (the EFI system partition, and the special partition)? How do they work together (are they two different stages of the boot process, like one for all OSs and one for a particular OS)? Also, do both these structures apply to UEFI?