programs: Make `make clean` clean all programs always

If `make TEST_CPP:=1` is run, and then `make clean` (as opposed to `make
TEST_CPP:=1 clean`), the cpp_dummy_build will be left behind after the
clean. Make `make clean more convenient to use by removing programs that
could be generated from any configuration, not just the active one.

Fixes #1862
diff --git a/ChangeLog b/ChangeLog
index bca38b5..02c3bb2 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -98,6 +98,7 @@
    * Change wording in the `mbedtls_ssl_conf_max_frag_len()`'s documentation to
      improve clarity. Fixes #2258.
    * Replace multiple uses of MD2 by SHA-256 in X.509 test suite. Fixes #821.
+   * Make `make clean` clean all programs always. Fixes #1862.
 
 = mbed TLS 2.17.0 branch released 2019-03-19