all those things are easily doable in GDK, all you need to do is to wrap things around to fit your needs, though, scripting is a whole new story and you will have to learn a scripting language such as LUA and implement it yourself in the engine as there is not support for this at all.
i have no idea what is your level of knowledge about GDK but in case you're totally new, you can check the Dark Invaders tutorial that came with the GDK samples, this should introduce you to how things work in GDK, next thing will be planning the layout of your engine, grab a paper and sketch a tree diagram showing how things are related to eachother, your best option is to use OOP (classes & inheritance), for example, a class for the system, class for the player, class for an enemy, classes for AIs, etc..
just get started and let us know if you need help, we will do our best to help out, good luck