reorganize ThreadPool and interfaces

- move implementations from Interfaces to Implementation (ThreadPool)
- change functor/worker list back to normal pointer (no use of
smart_pointer at this point of interface -> more possible
implementations
- update comments
- add list borders (max item defines)
move external reference Interface to own file
add test application

- add test application to use/test all functions of threadpool
- add dummy functor
add delete flag for calling associated functions

change delWorker handling
-> function locks worker list
-> removes worker
-> unlock list
-> remove worker

change handleWorkerCount handling
-> same as delWorker
force WorkerThread join in destructor

add endless loop until worker function is ready
change debug output
update CHANGELOG
update comments
add constructor parameter (DynamicPool)
add fast worker shutdown

dirty option to reset not finished worker threads by threadpool
destructor
use new DynamicPool construcor parameter
add error message
change code style
change TestPool

add too long DynamicFunctor before shutdown -> test fast shutdown
feature
litle changes

- add preprocessor conditions to disable advanced functionallity,
if not needed
- change code to reduce warnings
reduce warnings