some reorganization
some cmake rules
updated instructions