[RETARGET] Graceful server shutdown

Also, OnAppShutdown hook added allowing to perform some pre-shutdown code before the server get closed. The usage is similar to OnAppStart:

Example:

	// from: yourapp/app/controllers/somefile.go
	func InitDB() {
		// do DB connection stuff here
	}

	func CloseConn() {
		// close db connection here
	}

	func FillCache() {
		// fill a cache from DB
		// this depends on InitDB having been run
	}

	// from: yourapp/app/init.go
	func init() {
		// set up filters...

		// register startup functions
		revel.OnAppStart(InitDB)
		revel.OnAppStart(FillCache)

		// and shutdown functions 
		revel.OnAppShutdown(CloseCon)
	}