1) added function to get string in lower case

2) added entity factory class
3) added genericobjectcreation template
4) components have static name now