Allow card schema to be customized

Closes #2