added solution for multi-level prototype inheritence support and more unit tests