Remove use of malloc when adding tests

No dynamic memory allocation is now used at all
Remove unnecessary SuiteAppender

With the addition of a constructor to the Test struct, the SuiteAppender
is no longer required, removing it brings the compiled size of the
arduino_unit_test.ino sketch down from 9456 to 8880.
Tidy up Test interface

Make all members of Test private which don't need to be exposed to a
unit test sketch via the #defines in ArduinoUnit.h. Make TestSuite a
friend so that it alone can access these private members.
Remove error from TestSuite class

With dynamic memory allocation removed error will never be set to true
and is therefore superfluous.
Merge branch 'remove-malloc' into 1.7
Add ability to set FakeStream to end-of-stream

Fixes issue #6.