Those terms mostly describe the frequency characteristics of a given sound and how the person feels about those characteristics. For instance, an emphasis on lower frequencies can be characterised positively as "warm" or "mellow", or negatively as "muddy". Likewise, an emphasis on higher frequencies can be characterised positively as "bright" or "crisp", or negatively as "harsh". Other terms might describe the presence or lack of compression ("punchy", "tight", "loose"), distortion ("edgy", "crunchy", "smooth") or other type of manipulation of the source audio ("coloured", "transparent"), while yet others are completely ambiguous ("round").
Which term corresponds to which type of sound is, as you've been correctly led to believe, largely subjective and depends a lot on context (for instance, a subwoofer could be described as muddy compared to full-range speakers, but bright and punchy compared to other subwoofers), the listener's personal taste and listening ability, and so on. Granted, some words are more likely to be used to describe certain types of sounds (as shown in the previous paragraph), most likely due to existing meanings those words already possess that have simply been adapted to describe sounds, but there are no objective standards.
As for waveforms, it's not as simple as you describe. Not all of the terms you listed are mutually exclusive, and a waveform can (and will) contain information about different aspects of a sound - its frequency response, amplitude, dynamic range, total harmonic distortion, phase, etc. While the things you describe could be done with a simple sine wave (for instance, increase frequency to go from "fat" to "bright" or clip the tips to go from "smooth" to "crunchy" or "edgy"), with any real audio the waveform is going to be too complex to use as a basis for determining or changing the tonal qualities of a sound. Instead, look into tools actually used for this, like equalisers, compressors, limiters, amplifiers, filters, etc.