Refactor suspension code, fix bug where user would be booted when logging in