- FF and SF can't be combined with any other relationship
- FF and SF can't be combined with a 'Start No Earlier Than' constraint
- 'Must Start On' constraint can't be combined with any relationship
- SF can't have a predecessor that starts on the project start date (this would force the task to begin before project start)
Finally, since there was no good way to totally protect the user from ending up with a task that would begin before project start, I added logic in FF and SF scheduling to set the start date to project start if it otherwise would end up starting before project start. This could happen if you have a FF relationship with a task that starts close to the project start date, and a long duration on the successor task.

In this screenshot, task t2 has a FF relationship with t1, and task t3 has a SF relationship with t2.