Resolves #30, support better prompts.