basic backbone implementation