Commit for historical purposes. Init + test functions, for personal enrichment.