Switched to setuptools to support development
Added more customizability to the model.