(PUP-3936) Ensure that weaving logic is aware of block
Previously, a block parameter was not added to the weaving array
which resulted in it being omitted by the weaving logic. This
commit ensures two things.
- No parameters can be added after a block parameter.
- The index of the block parameter (size of the names array) is added to the weaving array.
A test is also added that tests combining injection with a required block
parameter.