Split out shared functionality.

Put membership and config classes in separate files in
preparation for the "My Billing" page which will depend on them.
Add code for user billing page.
Added some niceties for using dev server.

Now it gives you a little message like dashboard, and it
uses the hackerdojotest key instead of the production one.
Make main use the shared classes that I split out.

Also fix some indentation things, and show the dev message
even when running in the local GAE testing environment.
Merge branch 'djpetti-devel' into dev
"merge to dev branch"
import hashlib
my_billing now actually works.

Made it fetch by username instead of email.
Stop it from sending you to spreedly without auth.

Now the way to access it is through the my_billing page.
Merge pull request #12 from djpetti/devel

Stop it from sending you to spreedly without auth.
Add a mechanism to sync user data with dev app.

It strips all sensitive data from the set, and syncs in a cron
job which runs every hour.
Make sync requests use json instead of form.

I also finally fixed the whole dev mode detection mess.
More security changes.

- Make the datasync post request only work on the dev server.
changed payment api endpoint
changed msg when signing up with email that is already in database
Add first-time syncing and more logging.

Now it will sync all the membership models if it determines that
this is the first time it is running.
Make it nullify the hash property as well.
Add daniel's syncing stuff in.

Conflicts:
	membership.py
Got rid of autocomplete for user referral box.

It was snazzy, but it required a list of all the users in the
system to be loaded with the page, which, as you might expect,
made the page take *really* long to load.
Fix a problem with the last commit.

Now it allows you to leave the "referred by" field blank.
Merge pull request #17 from djpetti/devel

Fix slow page loading.