Any Mathematica application needs the Mathematica engine for it to run. If one creates a CDF then one needs the CDF Player (which is a version of Mathematica). One could run it on the Wolfram Cloud, which is running Mathematica in a client-server configuration (or webMathematica which also is another client-server method).
To create user interfaces it is far better generally to use Mathematica's native dynamic user interface constructs than to use GUIKit. The easiest way to do this is to make use of the Manipulate function. But one can build things from the ground up to ones own specifications using Dynamic, DynamicModule and the various user interface constructs.
One place to start is here: