Solved Issue #4 & Part of Issue #7