Enforce function declaration format in bash8

Check that function calls look like ^function foo {$ in bash8, and fix
all existing failures of that check.  Add a note to HACKING.rst

Change-Id: Ic19eecb39e0b20273d1bcd551a42fe400d54e938
diff --git a/exercises/aggregates.sh b/exercises/aggregates.sh
index d223301..01d548d 100755
--- a/exercises/aggregates.sh
+++ b/exercises/aggregates.sh
@@ -57,7 +57,7 @@
 AGGREGATE2_NAME=test_aggregate_$RANDOM
 AGGREGATE_A_ZONE=nova
 
-exit_if_aggregate_present() {
+function exit_if_aggregate_present {
     aggregate_name=$1
 
     if [ $(nova aggregate-list | grep -c " $aggregate_name ") == 0 ]; then