Shutdown of thread pool inside Dispatcher only if it is a PicassoExecutorService

If I want to provide an external thread pool, I don't want picasso have the shutdown operation on it.
Also changed the tests to reflect the fact that you can have an internally created or externally provided thread pool.
This should be Javadoc on the builder as well. Otherwise is just magic behavior.