Update getCategories to return subcategories
added socket.io npm