[DO NOT MERGER] Draft of scheme generation

@roman-mazur just review it and say am I moving in the right direction, please
throw new UnsupportedException()?