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/stack.sh b/stack.sh
index ac89e52..a702679 100755
--- a/stack.sh
+++ b/stack.sh
@@ -464,7 +464,7 @@
 # -----------------
 
 # Draw a spinner so the user knows something is happening
-function spinner() {
+function spinner {
     local delay=0.75
     local spinstr='/-\|'
     printf "..." >&3
@@ -479,7 +479,7 @@
 
 # Echo text to the log file, summary log file and stdout
 # echo_summary "something to say"
-function echo_summary() {
+function echo_summary {
     if [[ -t 3 && "$VERBOSE" != "True" ]]; then
         kill >/dev/null 2>&1 $LAST_SPINNER_PID
         if [ ! -z "$LAST_SPINNER_PID" ]; then
@@ -495,7 +495,7 @@
 
 # Echo text only to stdout, no log files
 # echo_nolog "something not for the logs"
-function echo_nolog() {
+function echo_nolog {
     echo $@ >&3
 }