Refactoring + Accepting plugins functions + Wrapping old streams
Dependencies update