added options.define, evaluate conditionals, fixes #99