adds a compiler
adds demo, nicephore returns self
Merge branch 'develop'