added new stream modules
plus minor refactoring