The other files:
ldlinux.c32
libcom32.c32
libutil.c32
Are also in the "/usr/share/syslinux/" directory.
The PXE boot process gets the "tftp server" from the DHCP request. It then uses "tftp" to download a 32-bot DOS program that then downloads and displays the menu. Menu's can be nested (by referencing a menu rather than a kernel). The location of the kernel and ramdisk are relative to the directory specified in the configuration of the TFTP server. The value of 1000 in the time out is 1 second do you need to multiply the number of seconds by 1000 for the time-out vaule. Also the "kernel" and "append" are on there own lines and each must not span a line (that means two lines one for each).
Another issue is that the standard Gentoo "genkernel" does not produce a initial ram disk which brings up the network to mount an NFS shared filesystem. I had to edit the "init" script to bring up the network and had to add in the dhcp client as well when I created a PXE based gentoo imager (about 7 years ago).