Added initial version. Added todo's.