[feature][experimental] Added initial version of on demand processing architecture.
[refac] Changed the names of layers references names
[refac] Updated the main file to use the new layer names
[fix] Added missing changes to the previous refactorization
[feature] Added user data field to store needed information
Added posix io layer prototype