PDFJam is a collection of scripts which provide an interface to the pdfpages package. There are tools for creating booklets and appending together PDF documents.
pdfbook command reorganises an input document such that when printed it will be in booklet form (after being folded in half).
A simple example of creating an A5 booklet from an A4 input PDF:
$ pdfbook --a4paper Input.pdf