Lark rewrite

Made the code overall better and reduced contract strictness of the expected level of user configuration.