The following content is provided under the Creative Commons non-commercial share-alike attribution license. That means that you can read, use, and implement the following ideas for non-commercial purposes. If you are interested in using any of the content listed on this page for any commercial use, you need to contact me first. All implementations should attribute me as the original author, and your implementation should be distributed under the same terms.