more Note class
fully functional