Added first version.
Do some code styling first, getting ready to make a better version.