Closes #3 description, contract, and entry constructor options are all optional now