Fix small compilation issues

* Add missing “assert.h” file header inclusion
* Do not define ARRAY_SIZE if it is already defined
* “mpconfigport.h” is a library header, not a system header
No, not Windows at all. It's just there's no correlation  between" “mpconfigport.h” is a library header, not a system header " and usage of doublequotes in include (well, there's reverse correlation - "library" headers should be used with angle brackets; local headers should be used with quotes; but besides "system", "library", and "local", there can be other adhoc types of headers, and that mpconfigport.h is exactly such).