Refactor custom option implementation * Derive enum of the custom option from strum crate * Trim-space the error-messages in smcat transpiler