For the characters in the game we're using Spriter by BrashMonkey which makes it really easy to build and animate the different characters. Using bones and parts is a very effective way to be able to combine different parts into unique characters. Here's a few examples of different head parts that I've made.
Here they're combined with a few other parts. Spriters character map function makes it easy to control which parts gets added to which bone directly from code, and I can still use the same animation file for all characters that share the same base body.
Bonus pic: a first version of a locomotive on some tracks. In-game we'll add particle effects to get a lot of smoke coming from the smoke stack. Should get a nice feeling to it.