seperated the project into a library & demo project.