I'm spending most of my free time on openxcom lately
It's getting addictive.
Very simple AI can give pleasing results. Same as very complex AI can look stupid
It's all about perception of the player.
You have
two levels of AI: the group level and the unit level. And on these two levels you have a finite state machine.
The group levels on the geoscape seem to be zones on the world: "The North-Africa Group", and they are in state's we all know as "Harvest", "Abduction", "Terror" etc.
The unit levels on the geoscape are the UFO's. The are in state "exploring", "chasing", "fleeing", "going towards a base", "shot down".
The group level on the battlescape is just "aliens"... and sometimes "civilians". Depending on the mission the are in certain state: "attack civilians" or "explore" or "attack xcom" or "retreat".
The unit levels are the aliens, and have states "exploring", "chasing", "fleeing", "dead"....
The units each make decisions to stay in their current state or change state depending on all the input they get from "the world", some scripted stuff, some random stuff....
You could implement it like you did the game states. Each state it's own object.
One thing that I have read in some gamedev book, is that when a units changes state, it is interesting to show this as some kind of emotion to the player, and not just by it's behaviour. This really makes your units look intelligent. An example of this is, when a unit sees you and enters the "aggro-state", it screams. Or if it hears something, it turns it's head towards it... things like that.