Added the test layout and updated readme

  Since we want to test this code, we now have a tests directory and an updated
  README doc. The test that is included is currenly a stub but it will be
  filled later.
Added a version test of the dir patcher
Added some basic integration tests
Made the delta implementation injectable into the patcher

  Unit testing this code without an injected implementation would be near
  impossible so we make the class accept it as a parameter.
Added TODOs to parts that need testing
Added tests to the patcher run() method
Implemented the compression of the patch directory for diffs

  Since we will be working on a one-file diff bundle, I've added the code
  to compress the patches into a tgz archive. I did not write the test for
  this code yet since it will be easier to test once both sides are complete.
Added test files and EUID checking

  Since we now actually do file testing in the module, I've added test files
  and EUID checking. EUID checking here is due to the fact that the code does
  not preserve UID/GID on extraction unless we're being run as root due to the
  security concerns.
Added tests to the check_euid method

  Since aply needs to check the EUID value, tests around this function were
  added and for better handling of problems, exception is thrown rather than
  program exit.
Added tests for the delta impl class
Merge pull request #3 from endlessm/testing

@sgnn7 Good work! merging...