Autologin only working the second time
The init hook is too early, so the is_user_logged_in() check is failing. Try using the wp_head hook instead (with a -1 priority). The exit/die function will still prevent the page from loading, but will give you more access to key globals you may need to evaluate. Example: add_action( ‘wp_head’, array(&$this, “autologin”), -1);