Improve buildsystem to be both simpler and more flexible, but you need to provide lextlib yourself