Refactor parsers

I refactored the parsers for fun - to make a little more modular and improve the PathTranslation stuff a little, I would prefer this to go in to a develop branch as it'll probably need a bit of testing (If this patch is actually wanted, I realised I changed quite a bit).

What this PR does:
* Removes the dependency on `PathTranslationParser` from all the Deploy Strategies
* Change `PathTranslationParser` to a simple decorator of original strategy
* Move Parsers to there own namespace
* Add tests for `PackageXmlParser` and fix some bugs with not imported exceptions
* Remove some redundant code in the strategies to make them a little simpler
* Abstract the Parser choosing to a Factory class
* Add some test assets for parsers
* Simplify unit-tests, especially the `PathTranslationParser` ones

If this is too much I can split it up or if you plain don't want it, that's fine :) I guess I was just trying to learn some stuff!

If you do want it, i'll squash it before you merge