Always update card type for all card constructors

This will fix Amex number validation when using card constructors with address/zip.
added LICENSE
Added support for Discover cards validation

Added a length-based validation for Discover cards.
Moved literals to constant fields for clarity.
Updated .gitignore with IntelliJ files.
Fix for null zip code
Update .gitignore for Android Studio, gradle
Embed the default publishable key to mirror iOS and also have the project build by default.
Add gradle build files
Use the latest build tools (19.0.3).
Fix test directory.
Slightly nicer wording here.
Add .log files to gitignore
Merge branch 'lyft-master' into phil-fixes

Conflicts:
	.gitignore
Merge branch 'master' of github.com:cbliu/stripe-android into cbliu-master
Merge branch 'cbliu-master' into phil-fixes
Update README.md

Add note about "Existing Android Code".
Update README.md

typo fix
typo fix
Upgrade stripe-java to 1.12.0
Merge branch 'master' of github.com:stripe/stripe-android

Conflicts:
	.gitignore
	build.gradle
	gradle/wrapper/gradle-wrapper.jar
	gradle/wrapper/gradle-wrapper.properties
	gradlew.bat
	settings.gradle
	stripe/build.gradle
	stripe/src/main/java/com/stripe/android/Stripe.java
	stripe/src/main/java/com/stripe/android/model/Card.java
better build scripts