Initial commit
* Initial Commit

TODO:

Request Refactory, Tests, Code Review
* Add proper Exception classes
* Add all API Requests
* Allow setting API keys on-the-fly
* Abstract the network layer, so we can add cURL alternatives
* Remove obsolete methods or functions across the whole project
* Set correct accessibility levels (public, private, protected)
* Complete rewrite to reflect PHPSpec and BDD-type of testing
* We're using Composer's autloader and we NEED composer to download all the dependencies
* Add Nofication handling and verification
* Add Genesis Response Parsing and verification
* Add Change "either" field check for synch/asynch transfers
* Add HTTP Header/Body parsing
* Remove the need for ROOT_PATH definition
* Fix improper XML generation
* Fix add Type PHP Notifications when dealing with un-initialized arrays
* Update Specs
* Add Countries (according to ISO 4217)
* Add Expect header to prevent HTTP 100
* Fix issues with Stream Context
* Support Configuration File loading
* Update Composer
* Add specs for curl, streamcontext, notification, response, errors
* Correctly append tokens
* Reduce production CA certificate count to reduce possible vectors of attack
* Add Configuraiton File Support
* Adding more specs
* Abstract network/builder classes
* Merge Base/Request into API\Request
* Refactor/Rename methods/functions to be more user-friendly
* Refactor, reduce and simplify the classes
* Green Specs once again
* Improve 5.3 support
* Add interfaces to Wrappers to make structure clear and unified
* Update PROD/STAGING certificates to match their active counterparts and allow for proper validation of the wpf subdomain on PROD
* Randomize parameters when running the specs to catch possible random-data errors
* Add Copyright to all files
* Fix specs to conform PHP v5.3
* Add support for different interfaces in Configuration
* Fix CVV random generator in the Request Specs
* Fix DOMDocument Copyright Notice
* Use Faker Library to populate Genesis requests
* Update Specs
* Remove silent errors from StreamContext (could still bring SSL issues though)
* Upgrade SSL Context settings to improve security and documentation
* Updated Composer Config/Cache
* Add genesis_php lib
Add Chargeback/Retrieval requests to the API
Add new method for verifying a required field where at least on field must be specified
Fix "CN_match" option deprecation in SSLContext
Support PHP 5.6 SSLContext
Add PHP Version Identification to Utils\Common
Merge branch 'master' of emp-sof-github01.emp.internal.com:eMerchantPay/genesis_php

* 'master' of emp-sof-github01.emp.internal.com:eMerchantPay/genesis_php:
  * Add genesis_php lib
Add empty check to the conditional requirement verification in order to avoid false "required field is missing" errors
Update the dependencies to their latest version
Refactor the lib methods
Simplify API\Request and correctly put the methods inside Genesis\Base
Much more OOP, diminish the use of static variables.
Add Genesis Response namespace