added gitignore for AppCode
did some refactoring
added unless:*: Methods for default values
README reflects the changes from before
added Default Value Methods
added use case in protocols