Work in progress
Checkpoint
Add error messages for misused parameters

1. Required number of parameters not declared
2. Param declared but not actually used in the function
3. Function not called with the correct number of params
Fix jshint
Add error message for function declared but not used in workspace
Param matching should allow creation of additional functions

Long-term it would be better to match a minimum number of definitions for
each required definition.  E.g. require 2 functions with no params and 3
functions with 1 param.  However this isn't easy to do in the current
`getMissingRequiredBlocks` and the current impl will work for all Course 4
levels (student is only ever required to edit one function at a time).
Add error message for incomplete block inside function definition
Check for incomplete blocks in the main workspace
Revert "Check for incomplete blocks in the main workspace"

This reverts commit 6862ed7da90fc640d6cc60f40a195977c743c113.
Removing this error for now.  It may have unintended side effects.
Add final error message strings from @kapone97
Fix `grunt test`
Merge branch 'production' of github.com:code-dot-org/code-dot-org into production
Code review feedback: move testsForAllProcedures out of required blocks
Merge pull request #602 from code-dot-org/staging

DTT
multi.en.yml merge conflict
Merge branch 'test' of github.com:code-dot-org/code-dot-org into test
Merge pull request #603 from code-dot-org/staging

DTT
Refactor feedback tests for functions: use `some` instead of `!every`
Merge pull request #604 from code-dot-org/test

DTP
Merge branch 'production' of github.com:code-dot-org/code-dot-org into production