**Description:**
Currently Harbormaster gracefully handles the scenario where the build step implementation no longer exists by displaying "This step has an invalid implementation". This allows the user to fix the issue by deleting the problematic build steps.
However, when one of the valid build steps has an input artifact, the page crashes and the user is unable to resolve the issue (they can not access the "delete step" button).
**Replication Steps:**
1. Create a Harbormaster build plan with a mix of build steps, where some of them have input artifacts.
2. To simulate an extension removing an implementation, delete one of the build step implementations in `src/applications/harbormaster/step`.
3. Observe hard crash.
**Expected Result:**
Harbormaster at least renders the page so the user can delete the broken steps.
**Actual Result:**
Page crash.
**Version Information:**
```
phabricator: 9da15fd7ab7071e3b7361463229abd4e918d9d94
arcanist: f1c45a3323ae20eefe29c0a22c7923fe8b151bbf
libphutil: 5fd2cf9d5ddd38424a54a8fba02398d527639970
```