Initial revision
merged minor conflicts
Add license header to all source code files