### Is there an existing issue for this?

- [X] I have searched the existing issues

### Enhancement description

Kinesis Mock is preparing a switch to a Javascript executable offering, which will remove the old GraalVM executables. This should be much easier to work with from Localstack's perspective, as well as remove the java dependency for users. But I'm unsure as to how to approach this in Localstack's code base, and am looking for some guidance / direction.

The current plan is to have 2 GitHub release assets:
- main.js
- main.js.map

To start the service, you'd simply do `./main.js`, as it should be an executable. You can use `node main.js` as well. 

I also plan to publish this to NPM if that is an easier grab for localstack. 

References:

https://github.com/etspaceman/kinesis-mock/pull/531
https://github.com/etspaceman/kinesis-mock/blob/scalajs/docker/Dockerfile


### 🧑‍💻 Implementation

Update these lines to execute a nodejs command instead:

https://github.com/localstack/localstack/blob/master/localstack/services/kinesis/kinesis_mock_server.py#L101

Upgrade this to the newest version (planning for 0.4.0):

https://github.com/localstack/localstack/blob/master/localstack/services/kinesis/kinesis_mock_server.py#L101

Update this to get the `main.js` file for all platforms:

https://github.com/localstack/localstack/blob/master/localstack/services/kinesis/kinesis_mock_server.py#L101



### Anything else?

_No response_
import logging
import os
from abc import ABC
from functools import lru_cache
import requests
from localstack import config
from ..utils.archives import download_and_extract
from ..utils.files import chmod_r, mkdir, rm_rf
from ..utils.http import download
from .api import InstallTarget, PackageException, PackageInstaller
LOG = logging.getLogger(__name__)
class SystemNotSupportedException(PackageException):
    """Exception indicating that the current system is not allowed."""
    pass
class ExecutableInstaller(PackageInstaller, ABC):
    """
    This installer simply adds a clean interface for accessing a downloaded executable directly
    """
    def get_executable_path(self) -> str | None:
        """
        :return: the path to the downloaded binary or None if it's not yet downloaded / installed.
        """
        install_dir = self.get_installed_dir()
        if install_dir:
            return self._get_install_marker_path(install_dir)
class DownloadInstaller(ExecutableInstaller):