set scheme as shared
create travis.yml
specify cocoa pods version to use, add test script
use Webpay as scheme running test
update xctool before install
add Webpay as executable in Run at scheme
add shake animation to textfield when invalid
rename notifySuccess to notifyValidity

validity is clearer than success
add isSupportedBrand: to WPYCreditCard
refactor: use isSupportedBrand: in brand validation
add brandNameFromPartialNumber:
make brandNameFromPartialNumber: & isSupportedBrand:
class methods

These methods does not require internal state, so
class methods look more appropriate.
rename startInvalidAnimation to startErrorAnimation
validate when textfield value changed
refactor: make notify methods protected
move method declaration in groups

textFieldDidBeginEditing: and textFieldDidChange:
are not methods to be overridden. They are protected
methods.
move methods under appropriate groups
rename shouldValidate to shouldValidateOnFocusLost

The method is called when the focus is lost to 
determine whether validation should be run.
force subclasses to override certain methods

raises exception if not overridden
group methods into appropriate pragma marks