update header ; use allspark as a submodule ; minor refactoring