Basic Meta impl

TODO clean and split into modules

See #61