ensureTypedArg (arg, type, defaultValue) {
        'use strict'

        if (typeof arg === type) {
            return arg
        }

        return defaultValue

    }
Given a value, a type, and a default value to fallback to,
ensure the given argument adheres to the type requesting,
returning the default value if type check is false.

@param  {(boolean|string|number|object)} arg          The value to perform a type-check on.
@param  {String} type         The type the `arg` argument should adhere to.
@param  {(boolean|string|number|object)} defaultValue A default value to fallback on if the type check fails.
@return {(boolean|string|number|object)}              The given value if type check passes, or the default value if it fails.