added packaging, tests and docs