added spec to change test to spec files
added async lock spec file
added extra documentation
added abstract_type
skipping non-passing test