[ ] Enforce valid parameters. Some functions will cause a crash when called with invalid parameters (e.g. mifare_classic_authenticate() with a NULL key). [ ] MAD and MifareApplication functions are tied to mifare_clasic_* ones and some refactoring is required to have a consistent API. [ ] Refactor examples and have consistent behavior. Dump to stdout unless -o is specified; Read from stdin unless a file is specified; Humanize dumps with a -h flag; Target aquisition is the same in all examples;