Rewrite puma restart script to wait for the entire restart process to ensure that the app is properly restarting