You can achieve all these things using the pre-packaged version of the library.
The extension mechanism is the same, regardless of whether you use the pre-packaged version or a full development setup. In both cases you’ll add additional modules to the editor, thus extending it without touching the actual source files.
A proper development setup (with NodeJS) will allow you to build your extensions in a modular fashion and bundle them along with the BPMN editor.
We generally assume a proper development setup for the examples we create. Cf. Philipp’s pointer to our extension example.