Each .mcfunction file SHOULD contain comment documentation at the top (in an ASCII art brick of '#' symbols)

The comment SHOULD contain:
  - the use of the function
  - input parameters (for macro functions)
  - return (both via data and via /return, if applicable)
  - usage guidelines (i.e. how expensive it is, as defined below.)


  >> USAGE GUIDELINES CHART <<
 ________________________________________________________________________________________________________________________
|  TIER #    |   WHAT IT IS OKAY FOR                     |  WHAT IT ENTAILS                                              |
|            |                                           |                                                               |
|     0      | Cheap enough for per-tick calculations.   | Most other stuff (than the stuff in other tiers.)             |
|            |                                           |                                                               |
|     1      | Expensive enough to be run conditionally. | 3-7 calls to /scoreboard, using /data, frequent @e usage, or  |
|            |                                           | 1-2 calls to /attribute. Basically, anything that uses a lot  |
|            |                                           | of NBT calculations.                                          |
|            |                                           |                                                               |
|     2      | Must be run conditionally, and sparingly. | 8+ calls to /scoreboard, 3+ tags in many selectors, using     |
|            |                                           | /data 3+ times, or using /attribute 2+ times. Extensive NBT   |
|            |                                           | usage.                                                        |
|            |                                           |                                                               |
|     3      | Pretty much just initialization.          | Creating/deleting scoreboards, assigning a lot of entities    |
|            |                                           | tags, possible long-range teleportation (loading chunks), or  |
|            |                                           | just generally a lot of data modification or chunk loading.   |
|            |                                           | Also applies to frequent /fill, /clone, or any /place calls.  |
|____________|___________________________________________|_______________________________________________________________|