Why is using object-oriented Perl an entirely separate manner of organizing a large project? Any one of the three preceding categories could be implemented using OO Perl, or non-OO Perl, or C, or lisp, or ... .
Are tiered and client/server really that distinct from one another? It is common to speak of n-tier client/server applications (I'm working on one now). It seems you mean to say that a tiered application must reside on a single machine, whereas only client/server apps are allowed to communicate over the network. To me, a tiered system is one that horizontally abstracts functionality into, for example, a database, a database access layer, a business layer, and a presentation layer. A client/server system utilizes interprocess communication possibly over a network to enable one program to invoke commands in another. But these are certainly compatible ways of organizing an application, and in fact together they provide a solution for your signal-handling worry.