Bypass Subscription Signup Page

Hi Folks,
Before I get into my actual question, I'd like to provide some background on my setup. I'm using WPMU Membership v3.4.6 and WP v3.7.1. I have three free subscription plans with each plan having a one-to-one mapping to an access level. There are no paid subscriptions in my site. Under Options>User Registration, I have "Use Subscription" set to "None".

What I'm trying to do is bypass the subscription signup page (action="subscriptionsignup") and automatically assign the user to the subscription plan/access level. I *think* that I've achieved this, but I'm hoping you can confirm that I won't run into any unexpected/unwanted side effects. My code is as follows:

function myTheme_registerUser( $user_id ) {
	// log the user in using post data
	$creds = array(
		'user_login'        => $_POST['user_login'],
		'user_password'     => $_POST['password'],
		'remember'          => true,
	);
	wp_signon( $creds, false );

	// bypass the WPMU subscription sign up screen
	do_action( 'membership_create_subscription', $user_id, $_REQUEST[ 'subscription' ], 'freesubscriptions' );
	do_action( 'membership_payment_subscr_signup', $user_id, $_REQUEST[ 'subscription' ] );				

	// take the user back to the home page
	wp_safe_redirect( home_url() );
	exit();
}
add_action( 'user_register', 'myTheme_registerUser' );

Does my code seem okay? Do you know of a better way to achive this perhaps?

Is there a way to get the payment gateway key(?) without hardcoding "freesubscriptions" in the first do_action() call?

Should I call wp_signon() before or after the two do_action() calls? I think that this should be done prior to calling do_action(), but it doesn't seem to matter in my tests.

Thanks in advance!