move test specs and stubs to external folder

* To avoid packaging those files into project jar
* And to avoid doing mvn package each time a file is modified
refactor test generators to handle package external files

* see previous commit