Determine custom vendor dir if vendor-dir is added/changed

Fixed #1347
The JmsSerializer ServiceProvider will be moved to its own repo shortly; that means it cannot depend on global state of phpDocumentor (that is also why I prefer not to use global state; due to this coupling effect). As mentioned in the comment above should the vendor folder, optionally, be retrieved from the container. 

This means that I would like this ServiceProvider to have the old functionality and if an entry in the container exists with the vendor path then that should be used instead. This ensures that the component remains separate from phpDocumentor's business logic and can be re-used in other applications.