Move to ExpressJs 4.x

Again, does what it says on the tin. Based on floatdrop's earlier work, adapted for 4.x.
Why this API change?