Implement new commands `build` and `check` + introduce bundles (.contract files)

Sergej Kostjucenko requested to merge cmichi-implement-cargo-pack into master

Created by: cmichi

Closes #96 (closed) by implementing

  • a new command cargo contract build, which results in a target/metadata.json, a target/<name>.wasm, and a target/<name>.contract (the .pack file mentioned in the issue).
  • a new command cargo contract check, which just tries to build the contract without generating metadata or optimizing the Wasm.
  • deprecates cargo contract generate-metadata for cargo contract build (which implicitly does this or via --metadata-only skips unnecessary operations not strictly needes for generating metadata).

Merge request reports