Enhance scripts to create multiple databases
In this change, we have enhanced our database scripts to generate/re-initialize multiple databases. In that case, we will have two separate databases for development. Database "egoods" is used to record all data for development, while database "test" is only for testing.
New script generate-sql.sh is written in perl. Just an experiment.

Next steps:
1. Use tool DatabaseInitializerRunner to insert predefined data into these database tables. This will help developers a lot.
2. During testing, use a different database other than egoods. In that case, running test cases will not pollute database egoods
3. Implement category service.