Added basic reusable classes

Added following classes:
- AutoCloseable<T>
- AutoCloseableLock
- AutoCloseableContext
- ReaderWriterLock