With help from #macdev, I was finally able to write a more sophisticated Emacs shell script. If you download
and soft link it as /usr/bin/emacs, it allows you to launch emacs from a terminal as a GUI app, or a pure command line ncurses app, by properly responding to the various emacs command line options.
I'm fairly demanding of my programs, so I hassled a few communities to help the shell script meet a lot of constraints. The dependencies are Emacs for Mac OS X, bash, and Mac OS X, though conceivably the script could be ported to Aquamacs or Homebrew Emacs.
The emacs shell script will work with a file to open, without a file to open, with and without other command line arguments such as -Q, --version, and --help, and files and command line flags can be passed to emacs in arbitrary order (${1+"$@"}).
In GUI mode, Emacs will release control from the shell; you can keep entering commands in the terminal that Emacs was launched from without having to background the process with Control+Z. Emacs does not die with the shell, if you happen to close the terminal (nohup).
Emacs will open in the foreground, not behind the terminal (osascript).
Emacs will not interrupt your terminal experience with stdout messages (> /dev/null).
If you do use the -nw flag, emacs will open inside the terminal in curses mode.