Mostly small code changes, some features have been added or completed.