Changed the initial functionality from 1 worker per each task to a static thread pool. This will greatly simplify the job passing between workers and the thread pool has it's internal queue.
Also modified the interface and the other class names to defined the Observer pattern more.
Also added new type of Exception: YTDException.java that will be directly displayed on the web page in case of an error.
Also added a working functionality for stream URL retrieval from the original Youtube URL.