add proper tile detection interface and doc blocks
add DS_Store to ignore list