Layering

... work in progress ...