many improvements, updated to version 0.2