I am new to plugin development. So please correct me, wherever I get it wrong.
I have a website which needs a players plugin with the following needs:-
Try to use WP's builtin custom post types and custom fields/taxonomies API. If it is not enough for your task - you can try to add some ORM like, say, Doctrine for backend. Also recently, I have developed a simple framework that provides some core functionality to add MVC approach to WP (basic request routing, html generation api, and "model" based on the wordpress' posts and custom fields). It is not perfect - but I can share the code and may be it will help you.