first version of PropertyUtil in its own module