heavy refactoring
added back gemspec, modified demo file