DynamicOutput enforce constraints
Summary: ensure that the current limitations of dynamic outputs are enforced with clear error messages.
Test Plan: added tests
Reviewers: catherinewu, schrockn
Reviewed By: schrockn
Differential Revision: https://dagster.phacility.com/D5612