Enzyme-based antifouling coatings: a review