add abstract_factory.php
add notes