Switched to a unix socket for puma.

According to the puma readme, unix sockets can see a 5-10%
performance gain over tcp://.

I also decided to move the puma server into a upstream provider, and
set fail_timeout=0 to prevent some gateway timeouts we were seeing.