Framework

Ready for review.