Initial commit to separate from original project, probably somewhat broken